meta charset windows-1252 vs UTF-8

时间:2013-05-08 19:11:10

标签: html character-encoding fonts meta-tags

我的HTML网页使用<meta charset="windows-1252">

  1. 是否正在更改为UTF-8?为什么?
  2. 我使用UTF-8检查了一些网页,并使用一些数学符号获得了问号。 E.G:x应该更改为×才能正确显示。我尝试了CpConverter但它没有很好地转换所有符号。
  3. 有没有更好的方法来转换许多文件?

3 个答案:

答案 0 :(得分:15)

  1. UTF-8 通常是经过批准的标准,适用于所有地方。 Windows-任何编码都是特定于Windows的,并不保证可以在任何计算机上运行。另外,请查看herehere
  2. 如果要更改文件的编码,可以通过多种方式进行更改。您可以在文本编辑器/ IDE中查找编码类型,或使用以下命令(未经测试,它应该可以工作):
  3. iconv -f WINDOWS-1252 -t UTF-8 filename.txt

答案 1 :(得分:0)

你的第一个问题的答案是肯定的。建议您绝对更改所有 HTML 5 文档的所有字符编码属性。

这是因为根据 W3C,它是当前的 HTML5 标准。我会基于这个原因更改任何给定站点中的所有页面,因为所有标记呈现的标准化是不可避免的。

这可以在任何具有查找/替换功能的编辑器上轻松完成。只需使用该功能在每个文档中查找该术语

<块引用>

<meta charset="windows-1252">

并将其替换为

<块引用>

<meta charset="utf-8"/>

UTF-8 字符编码应该能够处理您的数学字符,但如果它不是简单地保留原始字符集。其余只有文本的页面,您将希望更改为 UTF-8。这是 W3Schools 对您的字符编码的立场。

<块引用>

HTML5 规范鼓励 Web 开发人员使用 UTF-8 字符集,几乎涵盖了所有的字符和符号 在世界上! --W3Schools.com

如果大小是一个问题,如果它们不能正确呈现,那么您只会将那些具有特殊数学字符要求的文档保留在原始编码中,并且我认为这不会影响您的浏览器加载时间以致损坏你的搜索引擎优化。 如果您有很多带有数学符号的页面,那么如果您正在寻找一个受欢迎的网站或商业网站,这可能是一个问题,如果不是因为尺寸太小,文件大小的问题似乎没有问题。

对于其他文档,即使您有 BOM,您仍应将它们的编码更改为 UTF-8。

<块引用>

如果文件开头有 UTF-8 字节顺序标记 (BOM) 然后是 Internet Explorer 10 或 11 以外的最新浏览器版本 将使用它来确定您的页面的编码是 UTF-8。它 具有比任何其他声明更高的优先级,包括 HTTP 标题。

如果您有 BOM,您可以跳过元编码声明,但我们 建议您保留它,因为它有助于人们查看 源代码以确定页面的编码是什么。 --w3.org

祝你好运,编码愉快! :-)

答案 2 :(得分:-2)

这是一个老问题,但我的回答可能有助于某人做出更好的决定。

从ANSI(windows-1252)更改为UTF-8,大约是HTML文件大小的两倍。 (取决于文件中使用的字符)

如果您想测试此项,只需使用以下字符在记事本中创建一个文件:

  

الف

这些字符都是ANSI(Windows-1256)和Unicode。使用ANSI(Windows-1256)编码保存文件一次,再使用UTF-8编码保存文件。

UTF-8文件的大小:9个字节

ANSI(Windows-1256)文件的大小:3个字节

如果您想更改页面的字符集,只需在记事本或任何其他编辑器中打开它们,并保存为UTF-8编码。