编码和网页和utf8?

时间:2012-12-25 21:43:17

标签: asp.net .net html encoding utf-8

我已经知道utf是针对“我如何存储它”,它有一个好处,因为它有一个可变长度,可用于网站。

问#1

1)当我宣布

<meta http-equiv="Content-Type"    content="text/html; charset=utf-8" />

适用于

  • 如何 html文件本身存储在我的硬盘中?

  • 或 - 如何应该将文档传输到客户端(文档中的每个字符都将作为utf 8 char下载?)

  • 或者 - 当用户填写表单并提交 - 如何浏览器应该在表单输入+ html

  • 中将每个字符传输到服务器

问#2

2)如果utf-8可以包含所有内容,为什么我有时会看到charset=windows-1255"?为什么他们不总是使用utf8并且玩得开心?

2 个答案:

答案 0 :(得分:1)

Content-Type字符集的声明是客户端指示接收到的文本被编码的字符集的指示符。客户端应该对文档采取适当的操作,无论使用什么编码,是否存储原始字节和字符集声明,或将文本解码为中性字符集,或诸如此类。

答案 1 :(得分:1)

Q1。元内容类型告诉浏览器如何解释从服务器接收的字节。您可以按照meta标记指定的编码保存文件。服务器可以在Content-Type标头中设置字符集,但这可能与实际文件不匹配,因为没有100%可靠的方法来检测文件的编码。无论字符集如何,文件的字节都是相同的。

根据http://www.w3schools.com/tags/att_form_accept_charset.asp,页面的内容类型也会影响浏览器在从页面发布表单时用于编码数据的字符集。

Q2。好问题。我相信字符集仍然很容易被理解,所以编码不匹配开发人员定义的标题并不罕见。旧版应用可能无法编写UTF-8。当UTF-8中的等效字符占用更多字节时,使用特定的8位字符集时也会节省一个小字节。例如,欧元符号可以使用8位但在UTF-8中以24位表示在Windows-1252中