QT类和标准C++类的相互转换
字符类
QString与String相互转换
1.QString 转换 String
String str = qstr.toStdString();
2.String 转换 QString
QString qstr2 = QString::fromStdString(s);
QString 与 wstring 相互转换
1.QString 转换 wstring
wstring wstr = qstr.toStdWString();
2.wstring 转换 QString
QString qstr = QString::fromStdWString(wstr);
QString 与 char* 相互转换
1.QString 转化为 char*
QByteArray qByteArray = qstr.toUtf8();
char* cstr = qByteArray.data();
//或
char* cstr = qstr.toUtf8().data();
2.char* 转化为 QString
char *cstr =“测试”;
QString qstr(cstr);
qDebug()<<qstr.toUtf8().data()<<endl;
QString 与 wchar_t* 相互转换:
1.QString 转化为 wchar_t*
const wchar_t * encodedName = reinterpret_cast<const wchar_t *>(fileName.utf16());
2.wchar_t* 转化为 QString
QString qstr= QString::fromWCharArray(wctstr);