代码之家  ›  专栏  ›  技术社区  ›  Newbie

将HTML编码从UTF-8切换到UTF-16会出现什么问题?

  •  5
  • Newbie  · 技术社区  · 17 年前

    HTML编码从UTF-8更改为UTF-16意味着什么?我想知道你对这个问题的看法。在做出这样的改变之前,我需要考虑一些事情吗?

    注:感兴趣,因为我需要处理大量的日文和中文文本。

    6 回复  |  直到 17 年前
        1
  •  9
  •   Powerlord    17 年前

    我能想到一些会出错的事情:

    1. 您必须在HTTP头中指定它是UTF-16。与UTF-8不同,UTF-16是
        2
  •  8
  •   Jon Skeet    17 年前
    • 假设大部分HTML都是ASCII,那么带宽消耗可能会增加近一倍

    你为什么这么想 希望

        3
  •  3
  •   FeatureCreep    17 年前

    此外,字节顺序也成为8位以上数据的问题。UTF编码的文件以字节顺序标记开始,该标记用于确定该文件的字节顺序或尾数。

    Wikipedia has a quite good explanation of this.

        4
  •  3
  •   JacquesB    17 年前

    据我所知,所有现代浏览器都支持UTF-16编码。但是正如其他人指出的,您应该显式地声明编码。并非所有浏览器和平台都支持所有unicode字符,但我认为这与您使用的编码无关。

    但是,如果带宽是一个大问题,你应该考虑GHTML。这将比切换编码节省更多的带宽。

        5
  •  3
  •   McDowell rahul gupta    15 年前

    你这里的文章很好。基本原理指出,“当需要唯一字符编码时,字符编码必须为UTF-8、UTF-16或UTF-32。US-ASCII与UTF-8向上兼容(US-ASCII字符串也是UTF-8字符串,请参见[RFC 3629]),因此,如果需要与US-ASCII兼容,UTF-8是合适的。”,与US-ASCII的兼容性非常有用,几乎是一项要求。W3C明智地解释道,“在其他情况下,例如对于API,UTF-16或UTF-32可能更合适。选择其中一种的可能原因包括内部处理的效率以及与其他流程的互操作性。”

        6
  •  -6
  •   Martin Cote    17 年前

    我怀疑大多数浏览器甚至不会显示你的页面。