最近在網(wǎng)路上看到一些奇怪的中文字,例如:
?試??試??你??的??眼??力?? 請(qǐng)找??到??一??帆??風(fēng)順靠??靠??靠??
我試著將 靠?? 這個(gè)字找了線上的轉(zhuǎn)換器 轉(zhuǎn)成 utf-8
utf-8 顯示結(jié)果如下
\xe9\x9d\xa0\xe0\xbd\xbc\xe0\xbc\xb5
其中 \x 的部分 我當(dāng)作是 utf-8 的表達(dá),但我查不到這是哪裡的規(guī)范?
其中 e9 9d a0 ... 我認(rèn)為是 16 進(jìn)制的表示,e9 將會(huì)佔(zhàn) 1 個(gè) 字節(jié)(byte) 的大小
查看 utf-8 定義后發(fā)現(xiàn) :
通常1個(gè)字節(jié)可以存入一個(gè)ASCII碼,2個(gè)字節(jié)可以存放一個(gè)漢字國(guó)標(biāo)碼。
也就是說(shuō) 上面的這個(gè)字 用到了 e9 9d a0 e0 bd bc e0 bc b5 共 9 個(gè)字節(jié)(byte),應(yīng)該不屬於中文字。
請(qǐng)問(wèn)這樣我能知道它這個(gè)字,是屬于哪一國(guó)語(yǔ)言嗎? 或者是在 utf-8 的定義中,這個(gè)字在哪個(gè)范圍內(nèi)呢?
首先回答問(wèn)題本身:
“靠??”這不是一個(gè)整體的漢字,而是一個(gè)普通的漢字“靠”和緊隨其后兩個(gè)特殊字符?和?的組合。(復(fù)制到記事本等只支持純文本的編輯器里你就可以明顯發(fā)現(xiàn)這一點(diǎn))
兩個(gè)特殊字符我也不清楚是什么,想知道詳細(xì)可以去查對(duì)應(yīng)編碼范圍區(qū)域。
猜測(cè)是一些修飾字符,某些外語(yǔ)里需要用到。
其次糾正問(wèn)題本身一個(gè)錯(cuò)誤:
查看 utf-8 定義后發(fā)現(xiàn) : 通常1個(gè)字節(jié)可以存入一個(gè)ASCII碼,2個(gè)字節(jié)可以存放一個(gè)漢字國(guó)標(biāo)碼。
也就是說(shuō) 上面的這個(gè)字 用到了
e9 9d a0 e0 bd bc e0 bc b5 共 9 個(gè)字節(jié)(byte),應(yīng)該不屬於中文字。
utf-8是unicode的一種編碼方式,而漢字國(guó)標(biāo)碼是GB系列的編碼(GB2312、GBK、GB18030等)。
這兩者是兩種東西,不會(huì)有所說(shuō)的“查看utf-8定義……存放一個(gè)漢字國(guó)標(biāo)碼”的情況。2個(gè)字節(jié)放一個(gè)漢字的說(shuō)法也不準(zhǔn)確。
原始的unicode碼,所有字符都是2個(gè)字節(jié),包括漢字。
utf-8中,所有字符長(zhǎng)度不定(1-4個(gè)字節(jié)),一個(gè)漢字用3個(gè)字節(jié)。
國(guó)標(biāo)碼的GB2312和GBK中,所有字符都是2個(gè)字節(jié),包括漢字。
國(guó)標(biāo)碼的GB18030中,每個(gè)字符是1/2/4個(gè)字節(jié)
| Unicode符號(hào)范圍(十六進(jìn)制) | UTF-8編碼方式(二進(jìn)制) |
|---|---|
| 0000 0000 - 0000 007F | 0xxxxxxx |
| 0000 0080 - 0000 07FF | 110xxxxx 10xxxxxx |
| 0000 0800 - 0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx |
| 0001 0000 - 0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx |
取 Unicode 轉(zhuǎn)二進(jìn)制代入 UTF-8 xxx 部分
'靠'
// Unicode: '\u9760' --- '1001 0111 0110 0000'
// UTF-8: '11101001 10011101 10100000' --- '\xe9\x9d\xa0'
'天上飛的那個(gè)打不出來(lái)'
// Unicode: '\u0f7c' --- '0000 1111 0111 1100'
// UTF-8: '11100000 10111101 10111100' --- '\xe0\xbd\xbc'
'地上爬的那個(gè)也打不出來(lái)'
// Unicode: '\u0f35' --- '0000 1111 0011 0101'
// UTF-8: '11100000 10111100 10110101' --- '\xe0\xbc\xb5'北大青鳥(niǎo)APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國(guó)家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國(guó)一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國(guó)成功上市,融資1
北大課工場(chǎng)是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國(guó)家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國(guó)制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國(guó)職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開(kāi)發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_(kāi)發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫(kù),具有快速界面開(kāi)發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁(yè)制作和網(wǎng)頁(yè)游戲開(kāi)發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開(kāi)發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國(guó)Software AG 技術(shù)顧問(wèn),美國(guó)Dachieve 系統(tǒng)架構(gòu)師,美國(guó)AngelEngineers Inc. 系統(tǒng)架構(gòu)師。