QString转成std::string qT c++
时间: 2024-02-01 11:10:52 浏览: 21
在QT C++中,可以使用以下方法将QString转换为std::string:
```cpp
QString qs_original("ab中国cd");
std::string str = qs_original.toUtf8().constData();
```
这里,我们首先将QString转换为UTF-8编码的QByteArray,然后使用constData()函数将其转换为const char*类型,最后将其赋值给std::string类型的变量。
另外,如果你想将std::string转换为QString,可以使用以下方法:
```cpp
std::string str_original("ab中国cd");
QString qs = QString::fromUtf8(QByteArray::fromRawData(str_original.c_str(), str_original.size()));
```
这里,我们首先将std::string转换为QByteArray,然后使用fromRawData()函数将其转换为QByteArray类型,最后使用fromUtf8()函数将其转换为QString类型。
相关问题
C++ std::string转Qstring
C++中的std::string和Qt中的QString是两种不同的字符串类型,它们之间的转换可以通过以下方法实现:
1. 将std::string转换为QString:
可以使用QString的fromStdString()函数将std::string转换为QString,示例代码如下:
```cpp
std::string str = "Hello";
QString qstr = QString::fromStdString(str);
```
2. 将QString转换为std::string:
可以使用QString的toStdString()函数将QString转换为std::string,示例代码如下:
```cpp
QString qstr = "Hello";
std::string str = qstr.toStdString();
```
需要注意的是,这两种转换方法都需要包含相应的头文件,分别是<QtCore/QString>和<string>。
qt std::string转为QString 怎么做
可以使用QString的构造函数将std::string转换为QString:
```c++
#include <QString>
#include <string>
int main()
{
std::string str = "hello world";
QString qstr = QString::fromStdString(str);
return 0;
}
```
也可以使用QString的toStdString()方法将QString转换为std::string:
```c++
#include <QString>
#include <string>
int main()
{
QString qstr = "hello world";
std::string str = qstr.toStdString();
return 0;
}
```