-1

我有以下 JSON 文件:

{
   "outer_size":2,
   "inner_size":{
      "length_one":2,
      "length_two":1
   }
}

我将使用此信息创建一个新的 JSON 文件,其尺寸由outer_sizeinner_size和. 我要生成的结构有以下形式length_onelength_two

[
   {
      "a":[
         {
            "a_one":1
         },
         {
            "a_two":2
         }
      ]
   },
   {
      "b":[
         {
            "b_one":1
         }
      ]
   }
]

此结构包含两个“外部”变量ab因为outer_size=2.

a包含两个“内部”变量a_onea_two,而b包含一个“内部”变量b_one。这是因为inner_size分别是 2 和 1。

问题基于给定outer_sizeinner_sizelength_onelength_two,生成具有这些维度的 JSON 结构的最佳方法是什么?可以/应该用来完成吗?

请注意以下事项

  1. 的值outer_size必须始终等于length_XX-specifications 的数量(在上面的示例 2 中)。如果是 3,我们也必须指定length_three
  2. a_one等的具体值a_ two可以是本例中的任何值。现在我主要关心的只是构建基本结构。
  3. 我正在使用 Nlohmann 的 JSON 库来读取初始 JSON 文件。
4

1 回答 1

0

在不使用任何 JSON 库的情况下,我一直在使用此代码“手动”生成 JSON 代码。

fputs("[\n",file);
fputs("\t{\n",file);
fputs("\t\t\"a\":[\n" ,file);
fputs("\t\t     {\n",file);
fprintf(file,\t\t\t\"a_one\": \"%s\",\n",functionReturningJSONValue());

哪个会打印出您所要求的内容。我还没有完全做到,但我相信你会明白它是如何工作的。
希望对您有所帮助。

您仍然可以循环以使用 fprintf 创建一定大小的 JSON 和输入值。

于 2017-05-04T15:23:08.913 回答