在使用QT和C++进行开发的时候,由于两者的数据类型不完全相同,需要进行转换。下面介绍QString和string类型相互转换的方法。(QT4.6上已测试可用。)
1、在头文件中添加inlucde信息和转换函数声明:
- #include <QString>
- #include <vector>
- #include <iostream>
- #include <string>
- using namespace std;
- QString s2q(const string &s);
- string q2s(const QString &s);
2、在主体CPP文件中添加以下转换函数即可:
- QString s2q(const string &s)
- {
- return QString(QString::fromLocal8Bit(s.c_str()));
- }
- string q2s(const QString &s)
- {
- return string((const char *)s.toLocal8Bit());
- }