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();
