如何处理跨多个Web浏览器的不同编码

时间:2010-09-15 21:02:00

标签: c# browser encoding

我的网站包含法语,带有“é,è,à,......”字样。

该网站在Chrome中显示不错,但这些符号在firefox中搞砸了。我用C#StreamWriter生成了这些页面。我选择编码“UTF8”。

我也尝试过使用ISO-8859-1和ASCII,但收效甚微。

有没有办法弄清楚我可以使用哪种编码在每个浏览器中都能正常显示?

编辑*

好的,这是我做过的总和

我用默认编码读取文件
我用StreamWriter

将其写回驱动器
StreamWriter sw = new StreamWriter(path, false, Encoding.GetEncoding("ISO-8859-1"));

在每个页面中都有一个元标记

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

我的两个浏览器都设置为编码 - &gt; ISO-8859-1

我仍然在Firefox中出错,Chrome显示效果很好。

如果你想看到它的页面

http://www.amrikart.com/centretechno.html

1 个答案:

答案 0 :(得分:1)

您应该将Content-Type标头(或等效元标记)设置为用于生成文档的编码,以便浏览器可以可靠地解码您的内容。这是一个article explaining the details。对于国际字符,编码的良好选择是UTF-8。

如果您不理解为什么这是必要的,或者字符编码是什么; go read this article