JsonCpp如何判断是否有某个KEY,使用json[“key”]和isXXX的函数即可。
如果json中没有key键,则会创建一个空成员或者返回一个空成员。
// Access an object value by name, create a null member if it does not exist.
Value &operator[]( const char *key );
// Access an object value by name, returns null if there is no member with that name.
const Value &operator[]( const char *key ) const;
// Access an object value by name, create a null member if it does not exist.
Value &operator[]( const std::string &key );
// Access an object value by name, returns null if there is no member with that name.
const Value &operator[]( const std::string &key ) const;
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;
例如要判断Json数据中是否有{“status”:”1”}数据,则可以
if(json["staus"].isString()){
string temp = json["staus"].asCString();
}
如果Json中没有status键就不会提取该数据。