2009-06-21 29 views
7

我觉得这个问题很简单,我需要在基本平面之后的所有其余的东西在Unicode的东西吗?包含什么样的东西,是真的需要吗? (用于什么目的?)我需要辅助飞机吗?

谢谢。

回答

10

如果您打算在中国销售任何产品,那么GB 18030标准是强制性的,并且要求超出BMP(基础多语种平面)以外的字符。该标准已得到执行,为了在那里销售,您需要通过GB 18030认证。

日本和香港也有国家标准,要求字符超出BMP。 即使这些标准不像中国人那样执行,支持它们可能会给你一些优势。

所以简单的答案是:你需要一些东西。

=== 2016 ===

那是7年前。现在大家都在谈论emojis。那么,大多数表情符号都超出了BMP :-)

+0

除了认证问题之外,Unihan IICore字符集包含当前现代用法的所有汉字(中文,日文,韩文),其中包含62个补充表意平面(SIP)字符, – 2010-07-29 14:31:42

2

查看complete list of character charts

补充字符当前包含古代脚本。除非你有一个应用程序,可以处理Kharoshthi,Old Persion和Cuneiform等古代脚本,那么可能不是

我想如果您遇到未完成的UTF-8或UTF-16实现,您只需处理此问题。 UTF-8的某些实现不支持4字节字符,它是辅助平面:U + 10000以上的字符。想到MySQL

+0

其实我正在使用MySQL,这就是我问的原因。我想知道是否使用Binary或UTF-8表格。谢谢。 – Tower 2009-06-21 13:43:30

7

这取决于您是否控制您的数据。如果您使用的是除您以外的任何人的Unicode数据,则通常必须假定它可能包含补充字符,这意味着您需要处理4字节的UTF-8,UTF-16替代字符等等。

+1

很好的回答!所以很少有人根本就不了解这个关于数据出处的基本原理。 – hippietrail 2013-05-30 02:09:50

2

如果可能的话,您应该尝试支持包括补充平面在内的所有Unicode。现在有生活语言坐在补充飞机上,如Miao。将来会增加其他生活语言,目前有些语言需要辅助私人使用区域。然后还有Mihai Nita在他的answer中说过的话。

MySQL,从5.5开始,还有supports补充飞机。

最好现在花一点时间来全面支持Unicode,以便将来如果您真的需要它,那么您将不会遇到任何问题。而且你不知道谁会使用你的软件,以及他们将来会使用哪些脚本。现在大多数渲染引擎,GUI工具包,浏览器,操作系统等都可以毫无困难地支持这一点。

虽然这个问题在几年前被问过,但我在搜索中遇到了这个问题,并且从那时起事情就发生了变化。我目前正在处理程序员认为不需要补充飞机支持或者未经测试的问题。