个人小站

[资料]无签名UTF8和带签名UTF8格式

字数统计: 298阅读时长: 1 min
2021/08/10

带签名的UTF8:

带签名的UTF8,是在生成的文件中,在文件的开头使用UTF8标志,这样在下次使用编辑器编辑的时候,编辑器能准确的识别当前文件的编码格式,并做正确的解码。(UTF-16一般都有BOM头)

无签名的UTF8:

相反,无签名的UTF8是在保存的时候,不再文件头部写入文件的编码格式。

那么文件编码需要消耗多少空间呢? —— 答案是3个字节。

BTW:在UTF-8中使用EF BB BF三个字节BOM是微软私下的处理方式,在其他有些情况下会直接将这三个字节内容作为数据处理,造成程序的异常。在带与不带BOM(Byte Order Mark)的问题上,还需要更多的考虑。
请注意,PHP里请勿使用带签名的UTF-8编码来保存(我用过,结果只有FF显示正常,甚至网页源代码也看起来正常,但由于用了require,估计把”EF BB BF”这三个字节输入到文档中了,chrome居然解析出俩双引号)

原文:http://blog.useasp.net/archive/2012/04/21/The_different_between_Sign_utf8_to_unsign_utf8.aspx

原文作者:ted423

原文链接:http://ted423.github.io/Document/%E6%97%A0%E7%AD%BE%E5%90%8DUTF8%E5%92%8C%E5%B8%A6%E7%AD%BE%E5%90%8DUTF8%E6%A0%BC%E5%BC%8F/

发表日期:August 10th 2021, 8:32:50 pm

更新日期:October 28th 2015, 8:21:00 pm

版权声明:本站原创内容(一般是语句不通顺的那种)采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可,转载内容以及不带个人观点的分享不在此例,摘抄有Wiki的内容的文章统一根据Wiki采用 CC BY-SA 3.0

CATALOG