我正在查看std.json
库作为我正在处理的程序的一部分,我对如何从JSONValue
中获取数据感到困惑,其类型被推断为{{ 1}},TRUE
或FALSE
。
例如,如果我解析以下JSON:
NULL
然后我可以通过执行以下操作来提取属性{
"foo" : "bar"
}
中保存的字符串:
"foo"
但是假设我有这样的JSON:
auto json = parseJSON("/path/to/json/example.json");
auto foo_attr = json["foo"].str;
我需要做些什么才能获得{
"foo" : false,
"bar" : true,
"baz" : null
}
,"foo"
和"bar"
的属性值?
答案 0 :(得分:3)
查看变量的类型。
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;
当然,如果您希望值可能包含其他类型,则需要额外检查。