nlohmann::json 遍历
时间: 2024-10-18 14:03:11 浏览: 36
nlohmann::json是一个轻量级的JSON解析库,它是C++11标准兼容的,用于处理JSON数据。遍历`nlohmann::json`对象就像操作普通的C++容器一样。以下是几种常见的遍历方法:
1. **对于基本类型的值**:
如果值是直接访问的,例如`std::string`或数值,你可以直接读取。
```cpp
auto json = nlohmann::json{{"name", "Alice"}};
std::cout << json["name"].get<std::string>() << std::endl;
```
2. **对于数组**:
使用`[]`操作符访问数组元素,可以像循环列表一样遍历。
```cpp
for (const auto& element : json["array"]) {
std::cout << element << "\n";
}
```
3. **对于嵌套的对象或数组**:
使用`.`操作符逐级访问键值对,递归遍历复杂结构。
```cpp
for (const auto& pair : json) {
std::cout << pair.first << ": " << pair.second << "\n";
}
```
4. **迭代器遍历**:
可以使用`begin()`和`end()`函数获取迭代器范围。
```cpp
for (auto it = json.begin(); it != json.end(); ++it) {
// do something with each key-value pair
}
```
阅读全文