术语“多字节”是指其字符可以(但不必)宽于 1 个字节的字符集(例如 UTF-8),还是指在任何情况下都宽于 1 个字节的字符集(例如 UTF -16) ?换句话说:如果有人谈论多字节字符集,这意味着什么?
该术语含糊不清,但在我的国际化工作中,我们通常避免使用术语“多字节字符集”来指代基于 Unicode 的编码。一般来说,我们仅将这一术语用于具有一个或多个字节来定义每个字符的传统编码方案(不包括每个字符仅需要一个字节的编码)。
通常包括 Shift-jis、jis、euc-jp、euc-kr 以及中文编码。
大多数遗留编码(除了一些例外)都需要某种状态机模型(或者更简单地说,页面交换模型)来处理,并且在文本流中向后移动是复杂且容易出错的。 UTF-8 和 UTF-16 不会遇到此问题,因为 UTF-8 可以使用位掩码进行测试,而 UTF-16 可以针对一系列代理项对进行测试,因此在非病态文档中前后移动可以安全地完成,没有太大的复杂性。
对于泰语和越南语等语言,一些遗留编码具有多字节字符集的一些复杂性,但实际上只是建立在组合字符的基础上,并且通常不与广义术语“多字节”混为一谈。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)