日文文本的HTML编码

时间:2012-09-28 23:43:33

标签: html character-encoding

我正在创建一个静态HTML页面,以多种语言显示礼貌文本。我注意到,如果我将ウェブサイトのメンテナンスの下で粘贴到Expression Blend中,那么该文本在代码中显示的内容相同。我认为这对兼容性有害,应该用适当的HTML实体代替。

我已经尝试了http://www.opinionatedgeek.com/DotNet/Tools/HTMLEncode/encode.aspx,但它返回了相同的日文文本。

  1. 从浏览器兼容性的角度来看,将日语粘贴到HTML页面的源代码中是否正确?
  2. 否则,该文本的正确HTML编码是什么?或者,更好的是,是否有任何工具可用于将非ASCII字符转换为HTML实体,可能是在线且可能是免费的?

3 个答案:

答案 0 :(得分:2)

  

我认为这对兼容性有害,应该由适当的替换   HTML实体。

实际上恰恰相反,您的偏好应该是不使用html实体,而是正确地将文档编码声明为UTF-8并使用实际字符。有quite a few compelling reasons to do so,但真正的问题是为什么使用它,因为它是一个得到广泛支持的标准?

其中一些要点have been summarised previously

  

对于那些理解的人来说,UTF-8编码更容易阅读和编辑   字符意味着什么,知道如何键入它。

     

UTF-8编码与HTML实体编码一样难以理解   对于那些不了解他们的人,但他们有优势   渲染为特殊字符而不是难以理解的小数   或十六进制编码。

     

[例如]维基百科......实际上是通过文章和转换   字符实体为了它们对应的真实字符   用户友好性和可搜索性。

答案 1 :(得分:1)

只要您将网页标记为UTF-8,无论是在http标头还是元标记中,在网页中包含外来字符都应该不是问题。或者,您可以使用JavaScript中的encodeURI / decodeURI函数对这些字符串进行编码/解码

encodeURI('ウェブサイトのメンテナンスの下で')
//returns"%E3%82%A6%E3%82%A7%E3%83%96%E3%82%B5%E3%82%A4%E3%83%88%E3%81%AE%E3%83%A1%E3%83%B3%E3%83%86%E3%83%8A%E3%83%B3%E3%82%B9%E3%81%AE%E4%B8%8B%E3%81%A7"

decodeURI("%E3%82%A6%E3%82%A7%E3%83%96%E3%82%B5%E3%82%A4%E3%83%88%E3%81%AE%E3%83%A1%E3%83%B3%E3%83%86%E3%83%8A%E3%83%B3%E3%82%B9%E3%81%AE%E4%B8%8B%E3%81%A7")
//returns ウェブサイトのメンテナンスの下で

如果您正在寻找将一堆静态字符串转换为unicode字符的工具,您可以简单地使用网页开发者控制台(firebug for mozilla / firefox)中的encodeURI / decodeURI函数。希望这有帮助!

答案 2 :(得分:0)

HTML实体仅在您需要表示无法在保存文档的编码中表示的字符时才有用。例如,ASCII没有关于如何表示“€”的规范。如果要在ASCII编码的HTML文档中使用该字符,则必须将其编码为€或根本不使用它。

如果您使用的文档字符编码可以代表您需要的所有字符,例如UTF-8,则不需要HTML实体。您只需要确保浏览器知道文档的编码方式,以便正确解释它。这实际上是更好的方法,因为它只是保持源代码可读。如果您可以简单地使用实际字符,那么想要使用HTML实体是没有意义的。

有关更多信息,请参阅http://kunststube.net/frontback