JsonCpp如何判断是否有某个KEY,使用json[“key”]和isXXX的函数即可。
如果json中没有key键,则会创建一个空成员或者返回一个空成员。
bool isNull() const;
bool isBool() const;
bool isInt() const;
bool isUInt() const;
bool isIntegral() const;
bool isDouble() const;
bool isNumeric() const;
bool isString() const;
bool isArray() const;
bool isObject() const;
例子:
ifstream ifs;
ifs.open("testR.json"); Json::Reader reader;
Json::Value value;
if (!reader.parse(ifs,value,false))
{
return -1;
} if (value["name"].isString())
{
string name = value["name"].asString();
cout << "name:" << name << endl;
} // 如果value中没有 aaa 键就不会提取该数据,aaa会赋初值0,不会报错。
int aaa = value["aaa"].asInt();