这是简单的代码:
QByteArray ba = jdoc.toBinaryData();
QJsonDocument jdoc2;
jdoc2.fromBinaryData(ba);
qDebug() << jdoc.isNull();
qDebug() << jdoc2.isNull();
Run Code Online (Sandbox Code Playgroud)
结果:jdoc不为空,而是jdoc2为空。我究竟做错了什么?看起来jdoc2.fromBinaryData(ba);根本不起作用。我使用 Qt 5.5.0
QJsonDocument::fromBinaryData是一个静态方法。你需要写:
jdoc2 = QJsonDocument::fromBinaryData( ba );
Run Code Online (Sandbox Code Playgroud)