Fre*_*ing 0 utf-8 astral-plane
常用的ofc,克林贡不算:-)
谢谢,伙计们,让我运行willItFit()测试用例
好的,现在我想出了UTF-8的保存字节导致的问题多于解决问题,再次感谢
需要3个字节的字符从U + 0800和所有后续字符开始,因此这是一个巨大数量的潜在字符.这包括东亚脚本,如日语,中文,韩语和泰语.
有关脚本范围的完整列表,您可以参考Unicode的块数据.只有这些块可以用1或2个字节表示,所有其他块的字符需要3或4个字节:
0000..007F Basic Latin
0080..00FF Latin-1 Supplement
0100..017F Latin Extended-A
0180..024F Latin Extended-B
0250..02AF IPA Extensions
02B0..02FF Spacing Modifier Letters
0300..036F Combining Diacritical Marks
0370..03FF Greek and Coptic
0400..04FF Cyrillic
0500..052F Cyrillic Supplement
0530..058F Armenian
0590..05FF Hebrew
0600..06FF Arabic
0700..074F Syriac
0750..077F Arabic Supplement
0780..07BF Thaana
07C0..07FF NKo
Run Code Online (Sandbox Code Playgroud)
开始了:
所以前128个字符(US-ASCII)需要一个字节.接下来的1,920个字符需要两个字节进行编码.这包括带有变音符号的拉丁字母以及来自希腊语,西里尔语,科普特语,亚美尼亚语,希伯来语,阿拉伯语,叙利亚语和Tāna字母的字符.基本多语言平面的其余部分需要三个字节(其中几乎包含所有常用字符).Unicode的其他平面中的字符需要四个字节,其中包括不太常见的CJK字符和各种历史脚本.
更多细节:
http://en.wikipedia.org/wiki/Mapping_of_Unicode_character_planes,基本多语言平面,代码来自0x8000.
一些例子:印度语脚本,泰语,菲律宾文字,平假名,片假名.所以所有东亚剧本和其他一些.
归档时间: |
|
查看次数: |
1537 次 |
最近记录: |