![談?wù)刾hp中的unicode和utf8編碼_第1頁(yè)](http://file4.renrendoc.com/view/e1871ea81d01049cdab28546602b593d/e1871ea81d01049cdab28546602b593d1.gif)
![談?wù)刾hp中的unicode和utf8編碼_第2頁(yè)](http://file4.renrendoc.com/view/e1871ea81d01049cdab28546602b593d/e1871ea81d01049cdab28546602b593d2.gif)
![談?wù)刾hp中的unicode和utf8編碼_第3頁(yè)](http://file4.renrendoc.com/view/e1871ea81d01049cdab28546602b593d/e1871ea81d01049cdab28546602b593d3.gif)
![談?wù)刾hp中的unicode和utf8編碼_第4頁(yè)](http://file4.renrendoc.com/view/e1871ea81d01049cdab28546602b593d/e1871ea81d01049cdab28546602b593d4.gif)
![談?wù)刾hp中的unicode和utf8編碼_第5頁(yè)](http://file4.renrendoc.com/view/e1871ea81d01049cdab28546602b593d/e1871ea81d01049cdab28546602b593d5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本文格式為Word版,下載可任意編輯——談?wù)刾hp中的unicode和utf8編碼談?wù)刾hp中的unicode和utf8編碼
本文給大家深入議論了unicode和utf8這兩種編碼的關(guān)系,理解好了會(huì)察覺(jué)網(wǎng)上一些舊的東西,是嚴(yán)重多余兼過(guò)期的,由于從utf-8流行開頭到現(xiàn)在,早已經(jīng)由原來(lái)六字節(jié)可變編碼到實(shí)際完全居于unicodeUCS-2的穩(wěn)定階段。
重新熟悉unicode和utf8編碼
直到今天,切實(shí)的說(shuō)是方才,我才知道UTF-8編碼和Unicode編碼是不一樣的,是有識(shí)別的囧
他們之間是有確定的聯(lián)系的,看看他們的識(shí)別:
UTF-8的長(zhǎng)度是不確定的,有可能是1、2、3字節(jié)
Unicode長(zhǎng)度確定,2個(gè)字節(jié)(USC-2)
UTF-8可以和Unicode彼此轉(zhuǎn)換
unicode和utf8的關(guān)系
Unicode16進(jìn)制
UTF-8二進(jìn)制
0000-007F0xxxxxxx
0080-07FF110xxxxx10xxxxxx
0800-FFFF1110xxxx10xxxxxx10xxxxxx
上面的表格有2個(gè)意思,第一個(gè)顯而易見(jiàn)就是說(shuō)Unicode和UTF-8字符范圍的對(duì)應(yīng),還有一個(gè)可以看出Unicode怎么和UTF-8彼此轉(zhuǎn)換:
先說(shuō)UTF-8到Unicode的轉(zhuǎn)換
UTF-8編碼的二進(jìn)制和上面的3種格式舉行匹配,匹配到之后去掉固定位(表格中的非x位置),然后從右到左每8位一組,不夠8位左邊不領(lǐng),湊夠2個(gè)字節(jié)16bits,這16bits所表示的就是UTF-8對(duì)應(yīng)的Unicode編碼,看看下面幾個(gè)例子:
上面圖片中的文字編碼格式為UTF-8,可以用WinHex看到其16進(jìn)制表示
復(fù)制代碼代碼如下:
字符=UTF-8=UTF-8二進(jìn)制=去掉固定位置湊夠16位的二進(jìn)制=16進(jìn)制
漢=E6B189=111001101011000110001001=0110110001001001=6C49
字=E5AD97=111001011010110110010111=0101101101010111=5B57
#下面是在chrome命令行下面運(yùn)行的結(jié)果
\u6C49
漢
\u5B57
字
#到這里的'話,從UTF-8轉(zhuǎn)換到Unicode已經(jīng)是一件分外輕易的事了,看看轉(zhuǎn)換的偽代碼
讀取一個(gè)字節(jié),11100110
判斷該UTF-8字符的格式,屬于第三種,3個(gè)字節(jié)
持續(xù)讀取2個(gè)字節(jié)得到111001011010110110010111
按照格式去掉固定位101101101010111
不夠16位,左邊補(bǔ)零0101101101010111=5B57
再看看從Unicode到UTF-8的轉(zhuǎn)換
復(fù)制代碼代碼如下:
5B57
獲取5B57所在的Unicode范圍,0800=5B57=FFFF,得知5B57的UTF-8有三個(gè)字節(jié),形式為1110xxxx10xxxxxx10xxxxxx
獲取5B57的二進(jìn)制編碼101101101010111
用上一步驟的二進(jìn)制編碼從右至左拼接UTF-8編碼111001011010110110010111
說(shuō)說(shuō)問(wèn)題
再說(shuō)說(shuō)今天這個(gè)問(wèn)題的起因,從前端輸入好多單詞,UTF-8格式每個(gè)詞最多30個(gè)字節(jié),因此會(huì)在前端和后臺(tái)分別做驗(yàn)證,javascript用的是Unicode編碼,后端程序用的是UTF-8編碼,現(xiàn)在的解決手段是這樣
前端
?
1
2
3
4
談?wù)刾hp中的unicode和utf8編碼
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
functionutf8_bytesstr
varlen=0,unicode;
forvari=0;istr.length;i++
unicode=str.charCodeAti;
ifunicode0x0080
++len;
elseifunicode0x0800
len+=2;
elseifunicode=0xFFFF
len+=3;
else
throwcharactersmustbeUSC-2!!
returnlen;
#例子
utf8_bytesasdasdas
8
utf8_bytesyrt燕睿濤
12
后臺(tái)
?
1
2
3
4
#對(duì)于GBK字符串
$len=ceils
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度新能源行業(yè)勞動(dòng)合同終止與環(huán)保責(zé)任合同
- 2025年度體育場(chǎng)館清潔工臨時(shí)用工合同范本
- 《高效行政管理技巧》課件
- 《BCG矩陣分析法》課件
- 二零二五年度版權(quán)轉(zhuǎn)讓居間合同示范文本
- 《紅樓夢(mèng)閱讀指導(dǎo)》課件
- 《平安增員話術(shù)》課件
- 《說(shuō)課中和反應(yīng)》課件
- 二零二五年度排水溝清理與排水設(shè)施運(yùn)行維護(hù)合同
- 《靜電場(chǎng)中的導(dǎo)體》課件
- 大學(xué)生返家鄉(xiāng)社會(huì)實(shí)踐報(bào)告
- 免疫學(xué)基礎(chǔ)與病原生物學(xué)課件
- 初中生物中考真題(合集)含答案
- 《醫(yī)學(xué)免疫學(xué)實(shí)驗(yàn)》課件
- C139客戶開發(fā)管理模型
- 中考英語(yǔ)閱讀理解(含答案)30篇
- GB/T 5019.5-2023以云母為基的絕緣材料第5部分:電熱設(shè)備用硬質(zhì)云母板
- 《工傷保險(xiǎn)專題》課件
- 2024年農(nóng)發(fā)集團(tuán)招聘筆試參考題庫(kù)含答案解析
- 京東運(yùn)營(yíng)課件
- 安寧療護(hù)中的人文護(hù)理課件
評(píng)論
0/150
提交評(píng)論