在windows下的QT编程中char*与QString之间的转换

Qt4.7+Mingw+QtCreator+win7。
源文件使用ANSI编码(Qt中选择"System编码")。为解决中文乱码问题,在Main.cpp中添加:

    QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));
    QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GBK"));

//QString to char*
    QByteArray t1=str.toLocal8Bit();
	char *_char=t1.data();
//char* to QString
    QString str=QString::fromLocal8Bit(_char);

你可能感兴趣的:(char,QString)