utf-8文本乱码

时间:2014-02-12 16:04:03

标签: javascript text unicode utf-8

我还是webdev的新手并处理字符集编码。我已经阅读了http://kunststube.net/encoding/以及关于这个主题的其他一些内容。

我的问题是我收到了一堆我从服务器上提取的文字。它被编码并作为utf-8使用。

但是,当我显示字符串时,法语/西班牙语口音会出现乱码。我google了一下,似乎JavaScript引擎内部使用UCS-2或UTF-16。我有什么需要做的才能让我的文字被视为UTF-8吗?我有< meta charset =“utf-8”>在我的HTML中,但它似乎没有做任何事情。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

没有任何链接,我无法直接检查你在做什么,但你不需要在JavaScript中做任何特殊的事情来使它工作,只要确保所有的源都正确设置为UTF-8,并且浏览器正在解释它们。

您可能需要确保您的服务器(Apache?IIS?)正在设置相应的编码标头。例如在PHP中:

header('Content-Type: text/plain; charset=utf-8');
header('Content-Type: text/html; charset=utf-8');

或者在.htaccess中有很多方法可以做到。有两种方法:

AddCharset UTF-8 .html

或特定文件:

<Files "example.js">
AddCharset UTF-8 .js
</Files>

参考文献:

答案 1 :(得分:1)

如果您的html中没有元标记,请将其放在标题中:

<meta charset="UTF-8">

否则,您必须在脚本文件中声明字符编码