asp经典 – 经典ASP文本替换和UTF-8编码

前端之家收集整理的这篇文章主要介绍了asp经典 – 经典ASP文本替换和UTF-8编码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们有一个使用经典ASP的网站.

我们的发布过程的一部分替代文件中的值,我们发现了一个错误,它将文件写入UTF-8.

这样我们的应用程序开始吐出垃圾.撇号作为一些编码字符返回.

如果我们然后删除说明此文件为UTF-8的BOM,则以前呈现为垃圾的文本现在正确显示.

当遇到UTF-8文件时IIS有不同的地方吗?

解决方法

UTF-8不使用BOM;在某些Microsoft软件中,这是一个令人讨厌的错误.您需要找到发布过程的步骤是将UTF-8编码的BOM放在文件中并进行修复 – 即使您使用的是UTF-8,您也应该停止使用,这些都是最好的.

但我怀疑是IIS导致显示问题.更可能的浏览器正在猜测最终显示页面的字符集,当它看到看起来像UTF-8编码的字节时,它猜测整个页面是UTF-8.您应该可以通过使用HTTP标题来说明确定的字符集来阻止它:

Content-Type: text/html;charset=iso-8859-1

和/或HTML中的元元素

<Meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" />

现在(假设ISO-8859-1实际上是您的数据所在的字符集),它应该显示OK.但是,如果您的文件在开始时确实有UTF-8编码的BOM,那么现在您将在页面中看到“’,这是ISO-8859-1中的这些字节.所以你还需要摆脱这个misBOM.

猜你在找的asp.Net相关文章