On Monday, 26 October 2020 at 19:05:04 UTC, Vino wrote:
Hi All,

Request your help on the below on how to store the output to a multi dimensional associative array.

Code:

import std.stdio: writeln;
import asdf: parseJson;
import std.conv: to;

void main()
{
 string[int][string] aa;
 string apidata = `{"items":
  [
    {"name":"T01","hostname":"test01","pool":"Development"}
    {"name":"T02","hostname":"test02","pool":"Quality"},
    {"name":"T03","hostname":"test03","pool":"Production"}
  ]
  }`;
 auto jv = parseJson(apidata);
  foreach(j; jv["items"].byElement()){
      aa["Name"] = j["name"].get!string("default");
       i++;
  }
  writeln(aa);
}

Expected Output
aa["Name"] = [T01, T01, T03]
aa["Hostname"] = [test01, test02, test03]
aa["Pool"] = [Development, Quality, Production]

From,
Vino.B


Some comments:

1. You're missing a comma (,) after the first item in your apidata
2. You're creating a string[int][string] instead of string[][string] (your expected output)
3. Where is i++ coming from?

https://run.dlang.io/is/jfPoeZ

Reply via email to