应用技巧

关注公众号 jb51net

关闭
首页 > 网页制作 > 应用技巧 >

DW8与VS2003的乱码问题解决

作者:

DW8与VS2003的乱码问题解决
确切的说应该是Dreamweaver与VS2003的UTF-8兼容问题
问题描述
我习惯用DW的代码视图来编写HTML,而C#自然还是要在VS里写更舒服些.
DW我设置为xhtml1.0 utf-8 ,VS2003也同样保存为utf-8,可打开DW的文件或者复制DW的代码进来就是乱码,百思不得其解,都是UTF-8的呀,为什么还会乱码,而且更奇怪的是用IE浏览这乱码网页也都能分辨出是utf-8的编码.
问题只能集中在utf-8编码本身了,这才注意到utf-8的一些选项,查询了下 签名 BOM的信息
在布卢斯狼的blog上http://www.cnbruce.com/blog/showlog.asp?log_id=1000&cat_id=27 引用内容

如果选择 Unicode (UTF-8) 作为默认编码,则可以选择“包括 Unicode 签名 (BOM)”选项以在文档中包括字节顺序标记 (BOM)。 
BOM 是位于文本文件开头的 2 到 4 个字节,可将文件标识为 Unicode,还标识后面字节的字节顺序。由于 UTF-8 没有字节顺序,因此可以选择添加 UTF-8 BOM。对于 UTF-16 和 UTF-32,这是必需的。

ok,在DW和VS上都选择带签名,保存就OK了
还找到了如下信息,虽然现在没发现问题,但还是设置一下,就是选择C标准的UTF-8.

 引用内容

如果选择 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 。 
阅读全文