什麼是Unicode編碼?
Unicode是字元編碼規範,它定義了所有文字的編碼規則。說通俗點就是它按照某個規則給每個字元都分配了一個數字編號(比如:'A'的編號為65或0x0041,'萬'的編號為19981或0x4e0d),相當於是一個編號庫。這個數字編號也叫Unicode碼。最開始這個編號使用2個位元組表示(0x0000~0xFFFF),後來發現不夠又擴充套件到4個位元組(擴充套件出的部分:0x10000~0x10FFFF)。
和utf-8編碼的區別是啥?
Unicode只是一個標準,透過它我們可以獲取到字元的編號(Unicode碼),而這個編號如何儲存,它並沒有定義。而這個正是utf-8編碼做的事,它是建立在Unicode編碼基礎上,定義了Unicode碼的儲存規範。
比如:'A'的編號為65或0x0041,utf-8會儲存為1個位元組:0x41,這樣就可以節省一半的儲存空間。
一些常見的Unicode編碼範圍
0000-007F:C0控制符及基本拉丁文 (C0 Control and Basic Latin)
0080-00FF:C1控制符及拉丁文補充-1 (C1 Control and Latin 1 Supplement)
0100-017F:拉丁文擴充套件-A (Latin Extended-A)
0180-024F:拉丁文擴充套件-B (Latin Extended-B)
0250-02AF:國際音標擴充套件 (IPA Extensions)
02B0-02FF:空白修飾字母 (Spacing Modifiers)
0370-03FF:希臘文及科普特文 (Greek and Coptic)
0400-04FF:西裡爾字母 (Cyrillic)
1E00-1EFF:拉丁文擴充附加 (Latin Extended Additional)
2000-206F:常用標點 (General Punctuation)
2070-209F:上標及下標 (Superscripts and Subscripts)
20A0-20CF:貨幣符號 (Currency Symbols)
20D0-20FF:組合用記號 (Combining Diacritics Marks for Symbols)
2100-214F:字母式符號 (Letterlike Symbols)
2150-218F:數字形式 (Number Form)
2190-21FF:箭頭 (Arrows)
2200-22FF:數學運算子 (Mathematical Operator)
2300-23FF:雜項工業符號 (Miscellaneous Technical)
2460-24FF:封閉式字母數字 (Enclosed Alphanumerics)
2500-257F:製表符 (Box Drawing)
2580-259F:方塊元素 (Block Element)
25A0-25FF:幾何圖形 (Geometric Shapes)
2600-26FF:雜項符號 (Miscellaneous Symbols)
2E80-2EFF:CJK 部首補充 (CJK Radicals Supplement)
2F00-2FDF:康熙字典部首 (Kangxi Radicals)
2FF0-2FFF:表意文字描述符 (Ideographic Description Characters)
3000-303F:CJK 符號和標點 (CJK Symbols and Punctuation)
3040-309F:日文平假名 (Hiragana)
30A0-30FF:日文片假名 (Katakana)
3100-312F:注音字母 (Bopomofo)
3190-319F:象形字註釋標誌 (Kanbun)
31A0-31BF:注音字母擴充套件 (Bopomofo Extended)
31C0-31EF:CJK 筆畫 (CJK Strokes)
31F0-31FF:日文片假名語音擴充套件 (Katakana Phonetic Extensions)
3200-32FF:封閉式 CJK 文字和月份 (Enclosed CJK Letters and Months)
3300-33FF:CJK 相容 (CJK Compatibility)
3400-4DBF:CJK 統一表意符號擴充套件 A (CJK Unified Ideographs Extension A)
4E00-9FFF:CJK 統一表意符號 (CJK Unified Ideographs)
F900-FAFF:CJK 相容象形文字 (CJK Compatibility Ideographs)
FE10-FE1F:豎排形式 (Vertical Forms)
FE30-FE4F:CJK 相容形式 (CJK Compatibility Forms)
D800-DBFF:給UTF-16用的代理高半區(High-half zone of UTF-16)
DC00-DFFF:給UTF-16用的代理低半區(Low-half zone of UTF-16)
E000-F8FF:自行使用區域 (Private Use Zone)
FFF0-FFFF:特殊 (Specials)
上面的紅色部分為在中國用的比較多的字元,藍色部分是日文的字元
專業名詞解釋:
Ideographs:表意文字,也叫象形文字
CJK:中日韓
要檢視各個Unicode編碼範圍的字元資訊,可以使用BMFont,BMFont - AngelCode.com
參考
utf8,utf16,utf32,bom詳解(轉) - 宏2018 - 部落格園 (cnblogs.com)
Unicode 字符集、編碼 相關的基本介紹-CSDN部落格
各種語系的unicode對應以及local編碼方式 - YoZane - 部落格園 (cnblogs.com)
Unicode 中文,日文,西歐語言Unicode編碼域(區間)_日文unicode範圍-CSDN部落格