我有一个json数组
"requiredOnCreate": [
"Destination",
"EventTypes",
"Protocol"
]
我想检查此json数组中存在的所有值是否都作为键存在于此json文件中(其他json文件)
{"Destination":"100.10.8.8",
"EventTypes":"ResourceUpdated",
"Protocol":"Redfish"}
我尝试了很多可能性,但我可以一次检查每个键。 如果json数组中的所有值都存在于此json文件中,我想写条件。
答案 0 :(得分:0)
您可以遍历第一个数组,并检查第二个对象中是否有适当的值。
维护一个计数器,当第一个数组中的元素数等于第二个对象中找到的元素数时,第一个数组中的所有值都在第二个对象中。像这样(未经测试):
bool all_found = false;
int n = 0;
for (Json::Value::iterator i = required.begin(); i != required.end(); ++i) {
if (!other[*i].isNull())
++n;
}
if (n == required.size())
all_found = true;