qt QString 编码问题介绍
1、相关类的介绍
(1) QByteArray类
类QByteArray,用于存储字符串,QByteArray适用的两种主要情况是,当您需要存储原始二进制数据时,以及当内存节约非常关键时,QByteArray直接存储的是字符串的信息,编码方式为原字符串的编码方式,不发生改变。
(2) QString类
类QString字符串存储一个16位QChar字符串,其中每个QChar对应一个UTF-16代码单元,即,QString是以unicode编码的。
2、QString、char*之间的转换
由于QString是经过编码的不能直接转化为char*,需要先转化为QByteArray,再通过QByteArray来获取char*字符串
//假设字符串为utf-8编码的,先从unicode转化为utf-8格式的字符串
//QString -> const char*
QString str("test"