ANSI到UTF-8的转换

时间:2013-04-10 13:00:08

标签: utf-8 character-encoding

我想知道是否:

  1. 以ANSI(1252)编码的所有字符都可以毫无问题地转换为UTF-8。
  2. 以UTF-8编码的所有字符都无法转换为ANSI(1252)而没有任何问题(例如:Ǣ无法转换为ANSI编码)。
  3. 你能否证实我纠正了?

    谢谢!

1 个答案:

答案 0 :(得分:3)

是的,Windows-1252中可表示的所有字符都具有Unicode等价物,因此可以转换为UTF-8。有关显示Unicode代码点映射的表,请参阅this Wikipedia article

由于Windows-1252是一个8位字符集,并且UTF-8可以代表数千个不同的字符,因此显然有很多字符可以表示为UTF-8而不能表示为Windows-1252。

请注意,Windows-1252编码的名称“ANSI”严格不正确。当它首次提出时,它的目的是成为ANSI标准,但从未发生过。不幸的是,名字卡住了。 (微软相关文档通常也将UTF-16称为“Unicode”,另一个用词不当; UTF-16是Unicode的一种表示,但还有其他。)