关于QString转string时的问题,toLocal8Bit()函数

网上各种说法,我来讲讲我的看法。

对于QString 的

 

toLocal8Bit()

是将QString以自己正确的编码方式读取并转换成编译器编码方式的字节流,

 

而string本身就是字节流没有编码方式,等需要他时编译器会以编译器的编码读取方式读取并且没什么问题,至于显示是否是乱码得看很多东西,string本身应该读取的编码方式是否就是编译器的编码方式,是否也是系统默认的编码方式。

我是在Qt Creator 里调试发现就算执行了这句然后用.data()转化成string,调试器还是显示string是乱码,那是因为调试器的编码方式和编译器可能不一样,不用在意,程序是不会出错的。

像QTextCodec的调控我就没加发现也没关系。顺便说一句,

我之前的QString页面用到了

#pragma execution_character_set("utf-8")

 

以上是真实经历和个人看法,不喜勿喷!

你可能感兴趣的:(qt,语音识别)