如何判斷一個字節是否是一個漢字中的一部分


UNICODE是萬能編碼,包含了所有符號的編碼,它規定了所有符號在計算機底層的二進制的表示順序。

在UTF-8編碼中一個中文占三個字節

比如 漢字 "張" 對應的三字節編碼是[229 188 160]

但是如何判斷,229 188 160 是組合的呢,這里涉及到一套規則

UTF規定:

如果一個符號只占一個字節,那么這個8位字節的第一位就為0。

如果為兩個字節,那么規定第一個字節的前兩位都為1,然后第一個字節的第三位為0,第二個字節的前兩位為10

然后如果是三個字節的話,那么第一個字節的前三位為111,第四位為0,剩余的兩個字節的前兩位都為10。

所以一個字節最大是 011111111 轉換成十進制是 127 如果大於127則認為不止一個字節

兩個字節最大數是 11011111 10111111  轉成成十進制分別是223 和 191

兩個字節最大數是 11101111  10111111 10111111    轉成成十進制分別是239 和 191 和 191

這里設n為字節

n<128 則為1個字節

128<n<223為兩個字節

223<n<239 為三個字節

這樣可以輕松判斷出來是否是一組


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM