正在回答QString replace characters outside of quotes,我偶然发现了一个奇怪的行为。
执行此代码:
foreach (const QString &key, json.keys()) {
const QJsonValue &value(json.value(key));
qDebug() << key << value.toString().right(key.length());
}
与此json
, A :
QJsonObject json {
{"thing1", "thing1value1"},
{"thing2", "thing2value2"},
{"thing3", "thing3value3"}
};
以及此json
, B (请注意thing2
之后的逗号):
QJsonObject json {
{"thing1", "thing1value1"},
{"thing2", "thing2,value2"},
{"thing3", "thing3value3"}
};
在两种情况下都会产生:
"thing1" "value1"
"thing2" "value2"
"thing3" "value3"
不应为:
"thing1" "value1"
"thing2" ",value2"
"thing3" "value3"
在第二种情况下,B ?