есть такой код:
#include <QScriptEngine>
#include <QtGui>
#include <QApplication>
int main(int argc, char** argv) {
QApplication app(argc, argv);
QString str = "{\"some\":{\"a\":1,\"t\":7}}";
QScriptEngine engine;
QScriptValue value;
QScriptValue some_value;
value = engine.evaluate(str);
some_value = value.property("some").property("n");
qDebug() << "str: " << str; // str: "{"some":{"a":1,"t":7}}"
qDebug() << "some_value : " << some_value.toInteger(); // some_value : 0
return app.exec();
}
Ну, во-первых : таки
some_value = value.property("some").property("a");
QString str = "{\"some\":{\"a\":1,\"t\":7}}";
Возьми в (), чтобы получилось QString str = "( { \"some\" : { \"a\" : 1, \"t\" : 7 } } )";
value = evaluate(...);
if ( value.isError() )
qDebug() << value.toString(); // напечатает какая ошибка возникла, без () возникала ошибка парсинга
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)