C++ 如何将unicode QString转换为std::string?

C++ 如何将unicode QString转换为std::string?,c++,unicode,character-encoding,std,qstring,C++,Unicode,Character Encoding,Std,Qstring,我需要将QString转换为std::string。但是,如果这个字符串包含unicode符号,我会得到??。如何使用正确的编码转换字符串 谢谢。根据Qt文档,QString::TostString在内部使用toAscii()函数: 基本上,您需要创建自己的转换器函数,该函数将使用QString::toUtf8()。根据Qt文档,QString::toStdString在内部使用toAscii()函数: 基本上,您需要创建自己的转换函数,该函数将使用QString::toUtf8()。到目前为止

我需要将
QString
转换为
std::string
。但是,如果这个字符串包含unicode符号,我会得到
??
。如何使用正确的编码转换字符串


谢谢。

根据Qt文档,QString::TostString在内部使用toAscii()函数:


基本上,您需要创建自己的转换器函数,该函数将使用QString::toUtf8()。

根据Qt文档,QString::toStdString在内部使用toAscii()函数:


基本上,您需要创建自己的转换函数,该函数将使用QString::toUtf8()。

到目前为止,您是如何尝试转换字符串的

根据std::string,QString::toStdString()
应将unicode数据转换为ascii字符串


但是请注意,您丢失了ascii无法处理的特殊字符。

到目前为止,您是如何尝试转换字符串的

根据std::string,QString::toStdString()
应将unicode数据转换为ascii字符串

但请注意,您丢失了ascii无法处理的特殊字符