2016-10-27 9 views
1

キー。 add_childを使用してブーストptreeでトップレベルの配列

{"":{...},"":{...},"":{...},..."":{...}} 

は、実際には配列を尊重し、私の最も近いもの与えます:

{"Some Key":[{...},{...},{...},...,{...}]} 

をしかし、それは私が欲しいものはまだありません。

どのようにしてその配列をトップレベルにすることができますか?

答えて

1

BoostにはJSONライブラリがありません(また、XMLライブラリもありません)。これは、プロパティツリーライブラリ(JSON互換表現を含む)を持っています。 http://www.boost.org/doc/libs/1_62_0/doc/html/property_tree/parsers.html#property_tree.parsers.json_parser

プロパティツリーデータセットが入力されていない、とのような配列をサポートしていません。あなたがに実行

制限が完全に明らかに右が文書化されています。したがって、次のJSON /プロパティツリーマッピングが使用されます。

  • JSONオブジェクトはノードにマップされます。各プロパティは子ノードです。
  • JSON配列はノードにマップされます。各要素は空の名前の子ノードです。ノードに名前付き子ノードと名前のない子ノードの両方がある場合は、JSON表現にマップすることはできません。
  • JSON値は、値を含むノードにマップされます。ただし、すべてのタイプ情報は失われます。数字、リテラル "null"、 "true"、 "false"は単に文字列形式にマッピングされます。
  • 子ノードとデータの両方を含むプロパティツリーノードはマップできません。
  • JSON往復(型情報の損失を除く)。

これは、実行しているものの例を示しています。

関連する問題