• 分类

  • 重置

UTF-8、Unicode 标准化表单、BOM

    在“关于Dreamweaver制作UTF-8编码网页的测试 ”中提及的疑惑
    http://www.cnbruce.com/blog/showlog.asp?cat_id=27&log_id=999

    “阿韩”朋友一语解惑:即勾选上“包括 Unicode 签名(BOM)”

    为详细了解,以下内容摘自帮助文档:

    若要设置文档编码,请使用“默认编码”弹出式菜单。

    “默认编码”指定在创建新页面时要使用的编码,以及指定在未指定任何编码的情况下打开一个文档时要使用的编码。有关更多信息,请参见了解文档编码。

    如果选择 Unicode (UTF-8) 作为文档编码,则不需要实体编码,因为 UTF-8 可以安全地表示所有字符。如果选择其他文档编码,则可能需要用实体编码来表示某些字符。有关字符实体的更多信息,请参见 http://www.w3.org/TR/REC-html40/sgml/entities.html 。

    如果选择 Unicode (UTF-8) 作为默认编码,请选择一个 Unicode 标准化表单。

    有四种 Unicode 标准化表单。最重要的是标准化表单 C,因为它是用于万维网的字符模型的最常用表单。Macromedia 提供其他三种 Unicode 标准化表单作为补充。

    在 Unicode 中,有些字符看上去很相似,但可用不同的方法存储在文档中。例如,“”(e 变音符)可表示为单个字符“e 变音符”,或两个字符“正常拉丁语 e”+“组合变音符”。Unicode 组合字符是与前一个字符结合使用的字符,因此变音符会显示在“拉丁语 e”的上方。这两种形式都显示为相同的印刷样式,但保存在文件中的每种形式是不同的。

    标准化是指确保可用不同形式保存的所有字符都使用相同的形式进行保存的过程。即,文档中所有“”字符都保存为单个“e 变音符”或“e”+“组合变音符”,而不是在一个文档中保存为这两种形式。

    有关 Unicode 标准化和可以使用的特定表单的更多信息,请参见 Unicode Web 站点,网址是 http://www.unicode.org/reports/tr15 。

    如果选择 Unicode (UTF-8) 作为默认编码,则可以选择“包括 Unicode 签名 (BOM)”选项以在文档中包括字节顺序标记 (BOM)。

    BOM 是位于文本文件开头的 2 到 4 个字节,可将文件标识为 Unicode,还标识后面字节的字节顺序。由于 UTF-8 没有字节顺序,因此可以选择添加 UTF-8 BOM。对于 UTF-16 和 UTF-32,这是必需的。

    我特意注意了下,相同代码内容的两个文档,使用了BOM的文档字节比未使用的文档字节多3个字节

    对在Dreamweaver中遇到的这个问题,说大不大,说小也不小,平时疏忽啊。。。

    复制代码 代码如下:
    txt文件默认打开工具是nodepad,另存为utf-8后这个notepad工具会在文件头部强行添加文件utf-8 bom。 会破坏文件原有的内容,如果你的文件内容全部是ascii,大可不必另存为utf-8,因为utf-8编码包括了ascii。即使你要存成utf-8也要存成无bom的格式,可以用UE 11.0做到

发表评论

发表评论