我试图创建一个中文网页,我意识到,虽然文本看起来很好,但是当我在浏览器上运行它时,一旦我更改了字符编码,文本就会变成乱码。以下是发生了什么:关于中文编码的问题
- 我在Emacs中创建我的html文件,以UTF-8编码。
- 我将它上传到服务器,并在我的浏览器(FF,IE,Chrome,Opera)上查看 - 没问题。
- 我尝试通过FF> View> Character Encoding>其他编码查看页面。所有这些不同的中文编码系统,例如简体中文(HZ)
- 除了UTF-8之外,在其他所有编码中,文本都变成乱码。
我假设这不是一个问题 - 即浏览器足够聪明,知道该页面在哪个编码,并准确解析内容。我想知道的是,为什么我改变编码后不能再阅读中文文本 - 是因为我没有在我的操作系统上安装中文字体?如果我的听众是中国人,我应该坚持使用UTF-8吗?还是应该在众多编码系统中选择一种?
在此先感谢您的帮助/意见。
重新键入文字?你是否说我应该创建单独的文件,每个文件都用不同的编码编写和保存?那么我如何决定要提供哪个文件? – anthonytwp 2012-04-24 10:40:35
是的 - 但您应该遵循Agent_L的建议并在HTML中定义字符集编码,这将节省更多时间。如果你需要单独的文件,应该可以编写一个脚本来自动将UTF-8编码为需要支持的每一种其他编码,但是前瞻性地说,拥有相同内容的多个副本可能会成为维护的麻烦。 – MHTri 2012-04-24 11:28:49
我认为他的意思是当客户端请求一个文件并在其他编码中明确要求它时。尽管可能,但现代浏览器不太可能不支持utf-8(对我而言,我/我们有偏见的知识)。 – 2012-04-24 15:57:44