



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Unicode 簡介井民全如果你想在電腦中顯示其他國家的文字, 你要使用 Unicode 並且要下載相關(guān)的字型. Unicode將目前世界上大多數(shù)的語言都收集在一個(gè)統(tǒng)一的文字庫中 (Unicode space). 使用 Unicode 可以表示世界上所有的書寫語言中,可能用於電腦通訊中的文字,象形文字與其他符號(hào). 最初, Unicode 只是打算作為 ASCII 的補(bǔ)充用, 但是目前的趨勢似乎會(huì)全面取代 ASCII.Unicode 可以表示的完整文字集 (code points) 編號(hào)為 U+0 到U+10FFFF.所有的字元集合圖形可以在 /char
2、ts/ 中查閱得知. 比較值得我們注意的是: CJK Unified Ideographs (5MB) (中日韓文字) 這個(gè)字集包含了中日韓三種象形文字, 中文包含繁體與簡體. 所以根據(jù) Unicode 的定義, 同一份文章同時(shí)顯示繁體中文,簡體中文,日文與韓文是可能的. 因?yàn)樗麄兎謩e以不同的 code points 表示.Unicode code points容量為 0x10FFFF+1 = 共1114112種符號(hào)可用來表示世界上所有書寫語言用於電腦通訊中的文字. 1Unicode編碼格式的介紹: Unicode 基於效率與容量的考量,總共分為三種編碼方式. 你只要擇一編碼即可.UTF-32
3、: 最簡單的編碼方式,直接使用32-bit 對code points編碼,使得UTF-32碼與code point 形成 1 對 1對應(yīng).UTF-16: 範(fàn)圍在 U+0000 . U+FFFF 以內(nèi)的code points等常用字, 直接使用兩個(gè)byte編碼, 對於剩下的 U+10000 . U+10FFFF,則使用較多的4個(gè)byte編碼. 其中NotePad 存檔選項(xiàng)使用的 Unocide 選項(xiàng)存檔就是這種編碼方式. UTF-8: 為可變長度編碼(即每個(gè)字的編碼長度不固定), 為一串8-bit 編碼單元(code units)所組成. 主要特徵為與ASCII 相容 因?yàn)檫^去大部分的系統(tǒng)長期使
4、用 bytes 串列表示字元資料且一些通訊協(xié)定使用ASCII使用特殊的byte值當(dāng)作控制用途.所以 UTF-8編碼格式與ASCII CODE中的(0x00 . 0x7F)是一樣的(transparency) 這個(gè)意思是 Unicode 的code point 範(fàn)圍中的 U+0000 . U+007F在 UTF-8的編碼格式下,會(huì)被編成 0x00 . 0x7F. 不在 ASCII 範(fàn)圍的code points 一律使用 1 個(gè)byte 以上的編碼單元表示>另外 針對下列三種狀況,給予不同的編碼 - 所有非象形文字使用 2 個(gè) bytes 編碼 - U+0080 . U+FFFF 範(fàn)圍內(nèi)的文
5、字, 使用 3 個(gè) bytes 編碼 - U+10000 . U+10FFFF 則使用 4 個(gè) bytes 編碼例如: "井" U+4E95 <-(這個(gè)字你可以用 xp 的字元對應(yīng)表程式查出所在的Unicode point) UTF-32 = 0x00004E95 UTF-16 = 0x4E95 UTF-8 = (比較複雜 略) 輸入 Unicode查看字形編碼格式的比較效率空間UTF-32最有效率不用轉(zhuǎn)換最浪費(fèi)空間 => 每個(gè)字都要使用 4-byte 存檔UTF-16中等 常用字幾乎不用轉(zhuǎn)換中等(常用字用 2 bytes 表示(少用的字用 4 bytes 表示
6、)UTF-8 最沒有效率(只有 ASCII 不用轉(zhuǎn)換)(最節(jié)省空間) 使用可變長度編碼如何編碼的詳細(xì)步驟,請自行參閱延伸讀物 1. (1) 作業(yè)系統(tǒng)與 Unicode的關(guān)係 作業(yè)系統(tǒng)為了能在任何國家都能處理符號(hào)的問題,Unicode 就是其中一種設(shè)計(jì)的考量. Windows2000/XP 作業(yè)系統(tǒng)核心,完全使用 Unicode 表示文字. (98 卻很少支援 Unicode), 所以當(dāng)你使用C+ printf("柔情似水");Windows 會(huì)自動(dòng)將 Big5 的兩個(gè) ASCII code轉(zhuǎn)成相對應(yīng)的 Unicode 進(jìn)行 Win32 API 的呼叫, 最後把結(jié)果再轉(zhuǎn)換成
7、Big5 呈現(xiàn)在consol視窗中.圖形如下: "柔情似水" -> 轉(zhuǎn)成 Unicode -> 呼叫Win32API -> 轉(zhuǎn)成Big5 -> 顯示在 consol 視窗中 由此可知, Windows 作業(yè)系統(tǒng)內(nèi)部就完全使用 Unicode 表示文字, 因?yàn)轵?qū)動(dòng)程式為作業(yè)系統(tǒng)的一部分, 所以當(dāng)你要使用 DDK 撰寫 Windows 驅(qū)動(dòng)程式時(shí),就必須要注意文字一定要使用 Unicode 處理. (2) C語言 與 Unicode的關(guān)係 人家常常說, Unicode 使用 16-bit 表示字元,其實(shí)指的就是 UTF-16 編碼方式. 如果你從上面看到
8、這裡, 你就會(huì)明白我在說甚麼了吧. (程式語言只使用 UTF-16的 U+0000 . U+FFFF 範(fàn)圍的常用字) 在 C/C+ 中,如果你要把字串當(dāng)作Unicode 使用,你必須使用"寬字元" wchar_t. (定義在 WCHAR.h)寬字元char c='A' / c的內(nèi)容為 ASCII CODE 0x41 (一個(gè) byte)wchar_t d='A' / d的內(nèi)容為 Unicode 0x0041 (UTF-16 兩個(gè)bytes) *在電腦(INTEL CPU)下的記憶體排列順序?yàn)?41(低位址), 00(高位址)Windows 下的
9、寬字元處理方式TCHAR.HTCHAR c='A' / 若加入 #define _UNICODE, 則 TCHAR -> wchar_t / 否則 TCHAR -> char字串char *str=”Hello!: / 字串結(jié)尾使用 0( 1個(gè) byte)表示strlen(p); / 傳回 6 (不含結(jié)尾0)wchar_t *p=L"Hello!" / L 表示 long, 指示該字串以寬字元方式以 2-byte 為單位保存, 字串的結(jié)尾0佔(zhàn)用 2 byteswcslen(p1); / 傳回 6 (不含結(jié)尾)Windows 下的字串處理方式TCHAR *p=_T("Hello!"); / #define _UNICODE, _T("Hello!") -> L&q
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 商業(yè)物業(yè)并購合同協(xié)議
- 商品促銷協(xié)議書范本
- 售后維修間裝修合同協(xié)議
- 2025無需抵押的借款合同
- 總包合同價(jià)款補(bǔ)充協(xié)議
- 商務(wù)合作協(xié)議書范本
- 模板租賃電子合同協(xié)議
- 售房賠償協(xié)議書模板
- 2025家庭裝修設(shè)計(jì)合同協(xié)議書范本
- 2025果樹承包合同模板
- 2025年中考語文一輪專題復(fù)習(xí):古詩詞曲梳理復(fù)習(xí)重點(diǎn)整合
- 退行性腰椎滑脫癥診療指南(2025年版)課件
- 2025-2030中國菊芋菊粉行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報(bào)告
- 車間沖壓模具管理制度
- 2025年春初中語文七年級(jí)下冊教案設(shè)計(jì) 15 青春之光
- 2021碳纖維復(fù)合芯導(dǎo)線配套金具技術(shù)條件 第2部分:接續(xù)管
- 資料對外提供管理制度
- 2025-2030中國印刷電路板(PCB)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報(bào)告
- 公路養(yǎng)護(hù)機(jī)械安全操作
- 2025年中國智能可穿戴設(shè)備市場深度調(diào)研分析及投資前景研究預(yù)測報(bào)告
- 2025-2030國內(nèi)綠色蔬菜行業(yè)市場發(fā)展現(xiàn)狀及發(fā)展前景與投資機(jī)會(huì)研究報(bào)告
評論
0/150
提交評論