QString 保存的永远是一段二进制的一串东西 以及是这个二进制的编码
写进入将 任意字符用编码加工 写成二进制写进去
读出来 要按utf gbk 等等格式读出来
总之 读取 写入都要严格按照编码来
另外读window上txt要QString str = txtInput.readLine().toLocal8Bit(); 以这个编码存到QString去
GBK就是ansi的扩充 txt另存为的时候ansi实际上就是gbk
2019.10.23
GBK和UTF8可以互相转换
因为gbk转utf8bgk是固定字节 几个几个转就行
utf8有自己的规则 知道规则就知道一个字节是一个字符 之后在转换
2019.10.23
vs软件测试
可以看出 gbk 中文固定双字节 英文和数字一个字节
u8 中文占三字节 英文和数子占一个字节 而且有的汉字和其他字符是超过3字节的
UTF8就是unicode再转换而已,是个保存规则 但用的还是unicode 的量
编码 无非就是unicode 和ansi gbk是ansi的中文扩充给 u8 u16都是unicode的再编码 定义的规则