VS 无签名UTF-8和带签名UTF-8格式

在VS中,使用高级保存选项功能的时候,我们会发现UTF8有两种格式,一个是带签名的UTF8,一个是无签名的UTF8。那么这两种的格式有什么区别呢?

带签名的UTF8:

带签名的UTF8,是在生成的文件中,在文件的开头使用UTF8标志。

无签名的UTF8:

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

当有签名的UTF-8编码内容被解析器解析时,解析器直接根据签名即可判断出使用UTF-8编码来进行解析,当无签名时,解析器会根据内容的编码来进行判别。所以,有签名的将更容易被解析器以正确的编码方式进行解析。

有签名也就是带 BOM 信息,无签名就是不带 BOM。BOM,即 Byte Order Mark,也即字节流标记,它是用来让应用程序识别所用的编码的。UTF-8 的 BOM 是 0xEFBBBF。

猜你喜欢

转载自blog.csdn.net/hellokandy/article/details/85130012
今日推荐