qt中文的又一解决方法

最近学用QT,发现中文字串乱码,翻了论坛之后学会了
  main.cpp里设置如下:
 
  
  1.            QTextCodec *codec = QTextCodec::codecForName("GB2312");  
  2.   
  3.            QTextCodec::setCodecForLocale(codec);  
  4.            QTextCodec::setCodecForCStrings(codec);  
  5.            QTextCodec::setCodecForTr(codec); 
 其实很简单,没那么复杂。出现乱码的问题是你编写代码的文件编码和complied不一致。

如果使用Qt Ctreator,将文件编码设置为utf-8,或者其他字符集X(Edit | Select encoding),
然后,QTextCodec::setCodecForTr( QTextCodec::codecForName( "utf8" ));
只要明确知道自己编辑的文件是什么编码,然后再转编码。你编辑的文件是X字符集,utf8 改x即可。
 
 
 
 

你可能感兴趣的:(QT相关,qt,codec,encoding)