我正在查看std.json
库作为我正在处理的程序的一部分,我对如何从类型推断为TRUE
、FALSE
或NULL
的JSONValue
中获取数据有点困惑。
例如,如果我解析以下 JSON:
{
"foo" : "bar"
}
然后,我可以通过执行以下操作来提取属性"foo"
中保存的字符串:
auto json = parseJSON("/path/to/json/example.json");
auto foo_attr = json["foo"].str;
但是假设我有这样的JSON:
{
"foo" : false,
"bar" : true,
"baz" : null
}
我需要做什么才能得到"foo"
、"bar"
和"baz"
的属性值?
查看变量的类型。
auto json = parseJSON("/path/to/json/example.json");
bool foo = json["foo"].type == JSON_TYPE.TRUE;
bool bar = json["bar"].type == JSON_TYPE.TRUE;
bool bazIsNull = json["baz"].type == JSON_TYPE.NULL;
当然,如果您预计值可能具有其他类型,则需要进行额外的检查。