私はQStringをQJsonArrayに挿入する必要があります。問題は、文字列がそのまま挿入され、エスケープシーケンスが機能しないことです。ここQStringのエスケープシーケンスを解析するQt C++
QString fmt = QString("{\n \"%1\":\"%2\"\n}").arg(id,name);
QJsonValue qjv(fmt);
labellist.insert(lSize, qjv);
、QSTRINGは、「ID」と「名前」(これらはまた、QStringのれる)の値が移入し、次いでqjsonarrayするために挿入されます。ここのlabellistはQJsonArrayです。 QStringへの入力は、例えば "55"と "ggg"となります。私は
qDebug().noquote() << fmt;
ようQSTRINGを印刷するとき、それは私に
{
"55":"ggg"
}
を与えますが、私はlabellistにそれを挿入し、labellistを印刷する場合、それは与える:QJsonvaluesの
QJsonArray([{"121":"fuu"},{"122":"cat"},{"123":"dog"},"{\n \"55\":\"ggg\"\n}"])
形式を上記の配列内の配列は失われます。
フォーマットを維持してエスケープシーケンスを動作させるために文字列をデコードする方法を教えてもらえますか?
事前のおかげでたくさん... Kangkan
なぜあなたは書式文字挿入していますか?あなたはそれをする必要はありません。だから、 'QJson *'クラスが対象です。彼らはあなたのためにそれをする。 – vahancho