Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 将QString对象传递给Parser::parse()时出错_Json_Qt_Qjson - Fatal编程技术网

Json 将QString对象传递给Parser::parse()时出错

Json 将QString对象传递给Parser::parse()时出错,json,qt,qjson,Json,Qt,Qjson,我正在使用Qfile读取一个JSON文件。将其存储到Qstring对象中。将QString对象传递给Parser::parse()时,它显示编译错误,因为函数parse()只接受QIODevice*或const QByteArray&作为第一个参数 确切的错误消息是: no matching function for call to QJson::Parser::(QString,bool*) candidates are Qvariant QJson::Parser::parse(QIODe

我正在使用Qfile读取一个JSON文件。将其存储到
Qstring
对象中。将
QStrin
g对象传递给
Parser::parse()
时,它显示编译错误,因为函数
parse()
只接受
QIODevice*
const QByteArray&
作为第一个参数

确切的错误消息是:

no matching function for call to QJson::Parser::(QString,bool*)

candidates are Qvariant QJson::Parser::parse(QIODevice*,bool*)

note QVariant Qjson::Parser::parse(const QByteArray&,bool*)

我试图将
QString
转换为
qoodevice
QByteArray
,但都没有成功。

使用
QString::toUtf8()
,它将
QString
转换为
QByteArray

使用
QString::toUtf8()
,它将
QString
转换为
QByteArray

您确定这是确切的错误消息吗?第一行“调用QJson::Parser:(QString,bool*)时没有匹配的函数”看起来是错误的,当然应该是
QJson::Parser::parse
?另外,要获得有关编译错误的帮助,请显示代码和错误。您确定这是确切的错误消息吗?第一行“调用QJson::Parser:(QString,bool*)时没有匹配的函数”看起来是错误的,当然应该是
QJson::Parser::parse
?此外,要获得有关编译错误的帮助,请显示代码以及错误。
QString::toAscii()
只有在他知道数据将只包含ASCII字符时才是正确的。它将销毁非ASCII数据(如中文、日文、韩文字符)。JSON通常使用UTF8编码,因此
QString::toUtf8()
很可能是这里的正确答案。pliz为我提供了运行webservice、读取json并解析它的示例代码。实际上,这是我在Qt中的第一个应用程序。
QString::toAscii()
只有在他知道数据只包含ASCII字符时才是正确的。它将销毁非ASCII数据(如中文、日文、韩文字符)。JSON通常使用UTF8编码,因此
QString::toUtf8()
很可能是这里的正确答案。pliz为我提供了运行webservice、读取json并解析它的示例代码。实际上,这是我在Qt中的第一个应用程序。