先说Qt中的QString如何转char*吧。
int main(int argc, char **argv)
{
QApplication app(argc, argv);
QString str1 = “Test”;
QByteArray ba = str1.toLatin1();
const char *c_str2 = ba.data();
printf(“str2: %s”, c_str2);
return app.exec();
}
这里得注意,中间的ba变量是必不可少的,不能直接用str1.toLatin1().data()。
然后就是char*转QString:
方法一:QString string = QString(QLatin1String(c_str2)) ;
方法二:如果是中文系统,直接用 (const char*) str.local8Bit()
例如
printf(“%s”, (const char*) str.local8Bit());
str是一个QString
记录了一些自己学习过程中的知识,希望对你有帮助,也希望转载能保留原文地址。谢。
本文固定链接: http://liusir.name/qt-in-the-qstring-and-char-conversion.html | 民警小刘