编码格式
鱼非愚
真正的高贵是优于曾经的自己
展开
-
Base64编解码类
Base64的原理:解析一:就是把3个8位的char,通过位运算,变成4个6位的char。再经过高两位,也就是把256个选择变成了64个选择。而64个刚好是ASCII码中可以用来输出的64个字符,大小写英文字母52个+10个数字+两个特殊字符‘+’和‘/’,。解析二:Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3*8 = 4*6 = 24),然后把6Bit再添两位高位0,组成四个8Bit的字节,也就是说,转换后的字符串理论上将要比原来的长1/3。总结:用一句话来说明Base6原创 2022-05-05 11:02:10 · 311 阅读 · 0 评论 -
c++利用iconv实现编码转换类
iconv的原型如下: size_t iconv(iconv_t cd, char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft);此函数利用函数参数,同时返回了好几个值,每个函数参数既是入参,也是出参。作为入参cd是转换句柄。 inbuf是输入字符串的地址的地址。 .原创 2021-10-18 19:14:45 · 1397 阅读 · 0 评论 -
判断是否UTF-8编码并实现字节统计
UTF-8最大的一个特点,就是它是一种变长的编码方式。它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度。UTF-8的编码规则很简单,只有二条:1)对于单字节的符号,字节的第一位设为0,后面7位为这个符号的unicode码。因此对于英语字母,UTF-8编码和ASCII码是相同的。2)对于n字节的符号(n>1),第一个字节的前n位都设为1,第n+1位设为0,后面字节的前两位一律设为10。剩下的没有提及的二进制位,全部为这个符号的unicode码。/下表总结了编码规则,字母原创 2021-10-15 16:39:24 · 987 阅读 · 0 评论