utf-8 是1byte~4byte的變換,漢字utf-8儲存的,乙個漢字佔3byte
gbk 漢字gbk儲存的,乙個漢字佔2byte
utf-16be 漢字、字母都是2byte
utf8和utf16都是uincode
"中國abc"分別對應的編碼,按順序gbk,utf-8,utf-16be
11010110 11010000
10111001 11111010 01000001 01000010 01000011
注釋:11010110 11010000 中
10111001 11111010 國
01000001 a
01000010 b
01000011 c
11100100 10111000 10101101 11100101 10011011 10111101 01000001 01000010 01000011
注釋:11100100 10111000 10101101 中
11100101 10011011 10111101 國
01000001 a
01000010 b
01000011 c
01001110 00101101 01010110 11111101 00000000 01000001 00000000 01000010 00000000 01000011
注釋:01001110 00101101 中
01010110 11111101 國
00000000 01000001 a
00000000 01000010 b
00000000 01000011 c
同樣:utf-8和utf-16be是可以轉換的
11100100 101110
00 10101101 11100101 10011011 10111101 01000001 01000010 01000011
01001110
00101101 01010110 11111101 00000000 01000001 00000000 01000010 00000000 01000011
如果乙個漢字是utf-8的,是3byte。去掉第乙個byte的前4位1110
第二個byte的前2位10
第三個byte的前2位10
按照顏色對比。下面的同理。
關於中文編碼的一些問題
在檔案的第一行加入如下 能夠解決目前的問題。coding utf 8 具體內容待完善 python核心庫的open函式不支援吸入unicode,使用codecs模組可以解決這個問題。使用方法如下 import codecs f codecs.open filename w utf 8 普通寫入等操作...
String 一些問題
前言 等號 對於基本型別,比較的是值,對於引用型別,比較的是記憶體位址。1.在物件池中建立,如果常量池中已經存在則返回常量池中已經有的。private static void test1 結果 true 2.乙個在string pool中,乙個在堆中。private static void test...
C 一些問題
1 if else語句和switch case語句的效率分析對比 switch效率高。switch的效率與分支數無關,當只有分支比較少的時候,if效率比switch高,因為switch有跳轉表。分支比較多,那當然是switch 根據大量的實際程式測試 不考慮不同的編譯器優化程度差異,假設都是最好的優...