"vlan": { "type":"index", "vlan": [ {"0":{"key":"network"}, "1":{"key":"interface"}, "5":{"like":"eth0"}}, {"0":{"key":"network"}, "1":{"key":"bond"}}, {"1":{"key":"vlan"}, "2":{"key":"add"}}, {"1":{"key":"vlan"}, "2":{"key":"delete"}}, {"1":{"key":"vlan"}, "2":{"key":"clean"}} ] }, 如何遍历获取每一个key以及value
时间: 2023-07-24 18:13:56 浏览: 57
您可以使用迭代器来遍历 JSON 对象中的每一个键和值。以下是一个示例代码,展示如何遍历获取每一个键和值:
```cpp
#include <iostream>
#include <nlohmann/json.hpp>
using json = nlohmann::json;
int main() {
std::string jsonString = R"(
{
"vlan": {
"type":"index",
"vlan": [
{"0":{"key":"network"}, "1":{"key":"interface"}, "5":{"like":"eth0"}},
{"0":{"key":"network"}, "1":{"key":"bond"}},
{"1":{"key":"vlan"}, "2":{"key":"add"}},
{"1":{"key":"vlan"}, "2":{"key":"delete"}},
{"1":{"key":"vlan"}, "2":{"key":"clean"}}
]
}
}
)";
json data = json::parse(jsonString);
for (const auto& item : data["vlan"]["vlan"]) {
for (const auto& [key, value] : item.items()) {
std::cout << "Key: " << key << ", Value: " << value << std::endl;
}
}
return 0;
}
```
在这个示例中,我们首先将 JSON 字符串解析为 `json` 对象。然后通过迭代器遍历 `data["vlan"]["vlan"]` 中的每一个元素。
在内层循环中,我们使用结构化绑定将键和值分别赋值给 `key` 和 `value`,然后输出它们的内容。
请根据您的具体需求,在适当的地方修改代码以满足您的要求。
希望能解决您的问题。如果还有其他疑问,请随时提问。
阅读全文