QString与std::string 有中文时的转换操作

Posted 小哈龙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QString与std::string 有中文时的转换操作相关的知识,希望对你有一定的参考价值。

一. std::string转QString

1.一般情况下(不包含中文)

std::string str="111";
QString strQ=str.c_str();

2.包含中文情况下

std::string str="中文测试";
QString strQ=QString::fromLocal8Bit(str.c_str())

二.QString转std::string

1.一般情况下(不包含中文)

QString strQ="qwe";
std::string str=strQ.toStdString();

2.包含中文情况下

QString strQ="qw中文测试";
QByteArray mstr=strQ.toLocal8Bit();
std::string str=std::string(mstr);

以上是关于QString与std::string 有中文时的转换操作的主要内容,如果未能解决你的问题,请参考以下文章

QString与std::string的相互转换

QString和std::string转换乱码与sqlite存储汉字乱码

QString和std::string转换乱码与sqlite存储汉字乱码

Qt Qstring与c++标准string 的转化

将 std::string 转换为 QString

QString::toStdString() 在 std::string 析构函数上崩溃