關於unicode編碼的研究

2021-08-31 08:26:16 字數 1618 閱讀 2398

以前寫過一篇貼子是寫中文在unicode中的編碼範圍

unicode中文範圍

,但寫的不是很詳細,今天再次研究了下unicode,並給出詳細的unicode取值範圍。

本次研究的unicode物件是unicode 5.2.0版本。現在最新的是6.0版

對於這次研究的unicode把編碼分為以下幾個平面(英文中是plane,可以認為就是不同的區位)

unicode可以邏輯分為17平面(plane),每個平面擁有65536( = 216)個**點,雖然目前只有少數平面被使用。

平面0 (0000–ffff): 基本多文種平面(basic multilingual plane, bmp).

平面1 (10000–1ffff): 多文種補充平面(supplementary multilingual plane, smp).

平面2 (20000–2ffff): 表意文字補充平面(supplementary ideographic plane, sip).

平面3 (30000–3ffff): 表意文字第三平面(tertiary ideographic plane, tip).

平面4 to 13 (40000–dffff)尚未使用

平面14 (e0000–effff): 特別用途補充平面(supplementary special-purpose plane, ssp)

平面15 (f0000–fffff)保留作為私人使用區(private use area, pua)

平面16 (100000–10ffff),保留作為私人使用區(private use area, pua)

最有用的當然就是bmp平面0了編碼從u+0000至u+ffff。那裡包含了幾乎全部的常用字元。

unicode基本平面區的編碼區間含義

為鑑於unicode原有的16位空間不足以應用,於是從unicode 3.1版本開始,設立了16個擴充套件字碼空間,稱為輔助平面,

使 unicode 的可使用空間由6萬多字增至約100萬字。輔助平面字元要用上4位元組來儲存。

unicode中的幾大區間

最後小結下:

1、現在網上大多數用於判斷中文字元的是 u+4e00..u+9fa5 這個範圍是只是「中日韓統一表意文字」這個區間,但這不是全部,如果要全部包含,則還要他們的擴充套件集、部首、象形字、注間字母等等;

2e80-a4cf 加上 f900-faff 加上 fe30-fe4f

其中 2e80-a4cf 

包含了中日朝部首補充、康熙部首、表意文字描述符、中日朝符號和標點、日文平假名、日文片假名、注音字母、諺文相容字母、象形字注釋標誌、注音字母擴充套件、中日朝筆畫、日文片假名語音擴充套件、帶圈中日朝字母和月份、中日朝相容、中日朝統一表意文字擴充套件a、易經六十四卦符號、中日韓統一表意文字、彝文音節、彝文本根

f900-faff

中日朝相容表意文字

fe30-fe4f

中日朝相容形式

所以,一般用4e00-9fa5已經可以,如果要更廣,則用2e80-a4cf  ||   f900-faff || fe30-fe4f

2、全形ascii、全形中英文標點、半寬片假名、半寬平假名、半寬韓文本母:ff00-ffef

3、不要太關心簡繁中文的區別,如果要明確非要簡體中文可參考

unicode中簡體中文編碼

iOS 關於unicode編碼

網路通訊過程中常用的的一種編碼及解碼的方法,算是簡單的加密.一 pragma mark 將nsstring轉化為unicode字串 nsstring turntounicodewith nsstring curstr return result uppercasestring 二 pragma ma...

mysql關於unicode編碼查詢

在實際開發中,很多時候我們需要儲存一些表情emojit或者特殊符號,這個時候如果你單純去獲取使用者帶有表情包的名稱資料去儲存時,資料庫儲存儲存會出現亂碼,所以我們在儲存前需要對使用者的資料進行unicode編碼後再儲存,獲取的時候再進行unicode轉碼顯示即可。但是由於轉碼後的資料在資料庫中儲存的...

字元編碼 unicode編碼

1.ascii american standard code for information interchange 美國資訊交換標準 這是計算機上最早使用的通用的編碼方案。那個時候計算機還只是拉丁文本的專利,根本沒有想到現在計算機的發展勢頭,如果想到了,可能一開始就會使用unicode了。當時絕大...