utf8編碼對(duì)照表 Base64編碼為什么會(huì)使數(shù)據(jù)量變大?
Base64編碼為什么會(huì)使數(shù)據(jù)量變大?Base64編碼的思想是用64個(gè)基本ASCII字符重新編碼數(shù)據(jù)。它將要編碼的數(shù)據(jù)拆分為字節(jié)數(shù)組。以3字節(jié)為一組。按順序排列24位數(shù)據(jù),然后將24位數(shù)據(jù)分成4組,即
Base64編碼為什么會(huì)使數(shù)據(jù)量變大?
Base64編碼的思想是用64個(gè)基本ASCII字符重新編碼數(shù)據(jù)。它將要編碼的數(shù)據(jù)拆分為字節(jié)數(shù)組。以3字節(jié)為一組。按順序排列24位數(shù)據(jù),然后將24位數(shù)據(jù)分成4組,即每組6位。然后在每組的最高位前面填充兩個(gè)零,組成一個(gè)字節(jié)。這樣,一組3字節(jié)的數(shù)據(jù)被重新編碼為4字節(jié)。當(dāng)要編碼的數(shù)據(jù)的字節(jié)數(shù)不是3的整數(shù)倍時(shí),也就是說,最后一組小于3字節(jié)。此時(shí),最后一個(gè)組將填充1到20個(gè)字節(jié)。并在最后編碼后的末尾加上1到2“=”。(注:Base64字符表:abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzo123456789/)
從上面的編碼規(guī)則可以看出,通過Base64編碼,原來的3個(gè)字節(jié)會(huì)變成4個(gè)字節(jié),即字節(jié)數(shù)會(huì)增加33.3%,數(shù)據(jù)量也會(huì)相應(yīng)增加。所以Base64編碼的20m數(shù)據(jù)大小約為20m*133.3%=26.67m。
python浮點(diǎn)類型數(shù)據(jù)怎么base64decode后亂碼?
Encode,decode專門用于文件的編解碼,也可以對(duì)stringio中的數(shù)據(jù)進(jìn)行編解碼。因此,encode的對(duì)象應(yīng)該是一個(gè)文件或字符串,而不是一個(gè)浮點(diǎn)數(shù)(如果對(duì)其進(jìn)行編碼,將報(bào)告錯(cuò)誤)