检查 json 数组中的每个值是否存在于其他 json 文件中

check whether each value in json array are present in other json file

我有一个json数组

"requiredOnCreate": [
"Destination",
"EventTypes",
"Protocol"
 ]

我想检查此 json 数组中存在的所有值是否作为键存在于此 json 文件中(其他 json 文件)

{"Destination":"100.10.8.8",
"EventTypes":"ResourceUpdated",
"Protocol":"Redfish"}

我尝试了很多可能性,但我可以一次检查每个键。 我想写条件,如果 json 数组中的所有值都存在于这个 json 文件中。

您可以遍历第一个数组,并检查第二个对象中是否有合适的值。

维护一个计数器,当第一个数组中的元素数等于第二个对象中找到的元素数时,第一个数组中的所有值都在第二个数组中。像这样(未经测试):

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;