QJsonArrayを使用したQTQJsonObject挿入の補間値のシーケンス問題()メソッド



Sequencing Problem Method Interpolated Values Qt Qjsonobject Insert With Qjsonarray



  • QJsonArrayクラス

ザ・ QJsonArray クラスはJSON配列をカプセル化します。 もっと...

ヘッダ:



#include

qmake:



QT + =コア

以来:

Qt 5.0



  • 挿入メソッドの公式定義:

void QJsonArray :: insert(int i、const QJsonValue &値)

配列のインデックス位置iに値を挿入します。 iが0の場合、値は配列の先頭に追加されます。私が サイズ ()、値が配列に追加されます。

も参照してください 追加 ()、 付加する ()、 交換 ()、および 排除 ()。

terator QJsonArray :: insert( イテレータ 前に、const QJsonValue &値)

beforeが指す位置の前に値を挿入し、新しく挿入されたアイテムを指すイテレータを返します。

も参照してください 消去 ()と インサート ()。

  • QJsonObjectクラス

ザ・ QJsonObject クラスはJSONオブジェクトをカプセル化します。 もっと...

ヘッダ:

#include

qmake:

QT + =コア

以来:

Qt 5.0

  • 挿入メソッドの公式定義:

terator QJsonObject :: insert(const QString &key、c​​onst QJsonValue &値)

キーキーと値の値を持つ新しいアイテムを挿入します。

キーキーを持つアイテムがすでに存在する場合、そのアイテムの値は値に置き換えられます。

挿入されたアイテムを指すイテレータを返します。

値が QJsonValue :: Undefined 、キーがオブジェクトから削除されます。返されたイテレータは、 終わり ()。

も参照してください 削除する ()、 取る ()、 QJsonObject :: iterator 、および 終わり ()。

オブジェクトは、2つのそれぞれの挿入挿入差分メソッドをインターフェースします。

JsonObjectはキーと値のペアを順序で挿入し、ドキュメントのキーと値のペアは同じ順序ではありません(逆の順序で)。JSONオブジェクト自体が無秩序なキーと値のペアを参照しているため、順序を保証できず、実際に保存されたデータシーケンス。データが同じ順序を必要とする場合、JSON配列で考慮される場合、配列は値の順序付きリストです。

コード値を挿入します。

// build a JSON object QJsonObject json json.insert('Name', 'Qt') json.insert('From', 1991) json.insert('Cross Platform', true)

:(結果は逆の順序になります)

{ 'Cross Platform': true, 'From': 1991, 'Name': 'Qt' }

解決: 逆挿入値QJsonArrayと呼ばれるメソッドを挿入するか、インターフェイスを使用できます。

jsonArrayに順次挿入される値は、ファイル自体が配列であり、添え字(インデックス)を保持していることと一致しています。

コード値を挿入します。

// build Json array - Version QJsonArray versionArray versionArray.append(4.8) versionArray.append(5.2) versionArray.append(5.7)

:(結果は順序と一致しています)

'Version': [ 4.8, 5.2, 5.7 ]

学ぶための参照:

https://blog.csdn.net/m0_37194132/article/details/85085584

https://yq.aliyun.com/articles/119861