出于某种原因,html端的纯文本字符–被播放为–。我认为唯一能归因于这一点的是字符编码。我的猜测是它是utf-8,但不知道我是如何得到奇怪的角色。有解释吗?
默认情况下,我的意思是如果没有指定charset。
发布于 2012-08-28 16:44:56
这显然看起来像UTF-8被解释为其他的东西。
HTML没有默认设置。它是从传输协议(通常是HTTP)的头部获取的,或者是从BOM、meta元素或者XHTML声明中获取的。如果没有任何这些,用户代理就会猜测。
HTTP的缺省值是ISO8859-1,甚至有一个HTML描述为“无用”的[source](http://www.w3.org/TR/html401/charset.html#spec-char-encoding)。
因此。忘记默认设置,始终设置您的headers 和您的元元素(以防它被保存为文件)。
而且总是像UTF-8那样做。在这个时代,任何其他的事情都只是受虐狂的行为。
发布于 2012-08-28 16:38:02
我使用Eclipse提供的默认值,并且没有遇到任何问题:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>https://stackoverflow.com/questions/12163692
复制相似问题