我有一个简单的问题 - UTF-8
,UTF-16
和UTF-32
之间有什么区别?我知道编码的字符串有不同的大小,但是UTF-16
和UTF-32
是什么?不应该UTF-8
能够正确处理所有语言吗? UTF-7
如何适应这个?
修改
好的,我相对理解整个事情的技术方面,但我仍然没有看到我应该在我的应用中使用UTF-16
代替UTF-8
的原因。所以我的问题是 - 其他编码的实际用法是UTF-8
?
答案 0 :(得分:2)
着名的Joel Spolsky的这篇文章很好地解释了它:http://www.joelonsoftware.com/articles/Unicode.html
引用:
有数百种传统编码只能正确存储一些代码点,并将所有其他代码点更改为问号。一些流行的英文文本编码是Windows-1252(西欧语言的Windows 9x标准)和ISO-8859-1,也称为Latin-1(对任何西欧语言都有用)。但是试着在这些编码中存储俄语或希伯来语字母,你会得到一堆问号。 UTF 7,8,16和32都具有能够正确存储任何代码点的良好属性。
答案 1 :(得分:0)
也许Unicode FAQ会有帮助吗?
有一个比较图表总结了一些差异。