工作中可能会遇到这种情况:想用json变量的内容但又不需要用全部,想把不需要的项删除掉。此时removeMember派上了用场。removeMember有好几个重载的版本,这里只讲3个常用的版本。
1,removeMember普通成员
void removeMember() { Json::Value Sample; Sample["channel"] = 10; Sample["format"] = "H264"; Json::Value del; //保存remove 项对应的值 Sample.removeMember("channel", &del); printf("Sample = %s\ndel: %s\n", Sample.toStyledString().c_str(), del.toStyledString().c_str()); }
把channel项删除,结果:
2,removeMember 对象
void removeMember2() { Json::Value Sample; Sample["channel"] = 10; Sample["format"] = "H264"; Json::Value test; test["info"] = Sample; test["time"] = "134530943"; printf("test = %s\n", test.toStyledString().c_str()); Json::Value del; //保存remove 项对应的值 test.removeMember("info", &del); printf("after remove = %s\n", test.toStyledString().c_str()); }
把info对象删除,结果:
3,removeMember 数组成员
void removeMember3() { Json::Value Sample; Sample[0] = "0"; Sample[1] = "1"; Sample[2] = "2"; Sample[3] = "3"; printf("Sample = %s\n", Sample.toStyledString().c_str()); Json::Value del; Sample.removeIndex(1, &del); printf("after remove = %s\n", Sample.toStyledString().c_str()); }
把下标为1的数组元素删除,结果:
标签:removeMember,Value,Sample,json,del,Json,使用,test From: https://www.cnblogs.com/lidabo/p/17147380.html