抛转
在使用Qt时,有时候需要将QString转为char或unsigned char后进行其他操作,通常这样是没啥大问题。但最近同事探讨了下QString如何转为unsigned char*,并当QString中包含中文时 如何转换?
我们一般就这样处理了:
const char * = QString.toStdString().c_str();
不过,貌似不是很对:
再抛
在学习C的时候,书本抛给咱们的是char类型占1字节(0-127)并一般存储为ASCII码,也就那么几个字符(字符、数字、大小写、转义字符、一堆不可见字符等)。
unicode\utf-8字符集编码
那么这里说一哈,我们这用unicode\utf-8字符集编码。再说一哈这个编码汉字占2~4字节。
解决
我们来自己造轮子。工艺如下:
- 初始化
QString text