在 Visual Web Developer 另存为文件时,有编码选项,其中有:
- Unicode (UTF-8 with signature) - Codepage 65001
- Unicode (UTF-8 without signature) - Codepage 65001
这两个都是 UTF-8,一个带签名,一个不带签名,有什么区别呢?
带签名也就是带 BOM 信息,不带签名就是不带 BOM。
如果这个网页是用来被别人包含的,如 ASP 中的 include,那么这个网页就不要带签名,否则输出网页时,二进制流中会有两个 BOM 信息(包含页一个,被包含页一个),可能会发生错误。
名称解释
BOM,即 Byte Order Mark,也即字节流标记,它是用来让应用程序识别所用的编码的。UTF-8 的 BOM 是 0xEFBBBF。
如果用文本编辑工具EditPlus打开,带签名的文件会显示编码为utf-8 + ,不带签名的显示 utf- 8