日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

UTF8、UTF16、UTF32区别

發布時間:2023/12/8 编程问答 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UTF8、UTF16、UTF32区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

UTF8、UTF16、UTF32都是unicode字符集的字符編碼。

UTF意思是unicode轉換格式(Unicode transform format),出現UTF8、UTF16、UTF32是出于要在內存中存儲字符的目的而對unicode字符編號進行編碼。

UTF8、UTF16、UTF32區別:(8、16、32可看做每種字符編碼存儲所需的最少的比特位數)

UTF8:存在單字節編碼,兼容ASCII;當編碼為一個字節,則設最高比特位為0;當編碼超過一個字節,則需要幾個字節,就在第一個字節從最高位開始令連續的幾個比特位為1,之后的字節最高位為10。

UTF32:用固定長度的字節存儲字符編碼,不管Unicode字符編號需要幾個字節,全部都用4個字節存儲,直接存儲Unicode編號。無需經過字符編號向字符編碼的轉換步驟,提高效率,用空間換時間。

UTF16:使用2或4個字節進行存儲。對于Unicode編號范圍在0~FFFF之間的字符,統一用兩個字節存儲,無需字符轉換,直接存儲Unicode編號。對于Unicode字符編號在10000-10FFFF之間的字符,UTF16用四個字節存儲,簡單說就是:將Unicode字符編號(3字節)分為兩部分,高位部分(Unicode字符編號中占1.5個字節)用一個值介于 D800-DBFF (110110yy yyyyyyyy,y為0/1)之間的雙字節存儲,低位部分用一個值介于 DC00-DFFF (110111xx xxxxxxxx,x為0/1)的雙字節存儲。而介于D800-DFFF之間的編碼在Unicode中是預留的,不安排字符,如果Unicode中有字符的編號是這之間的值,會引發沖突和歧義,很有可能一個不常見字符(存儲為四個字節)最后被讀成兩個常見字符(存儲為兩個字節)。

參考:https://blog.csdn.net/pipi1375/article/details/84784392

總結

以上是生活随笔為你收集整理的UTF8、UTF16、UTF32区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。