c++ json转map
时间: 2023-07-19 19:42:17 浏览: 220
json 转换为map
你可以使用第三方库如 JSON for Modern C++ 来将 JSON 转换成 C++ 中的 std::map。下面是一个简单的示例代码:
```c++
#include <iostream>
#include <fstream>
#include <map>
#include "json.hpp"
using json = nlohmann::json;
int main() {
// 从文件中读取 JSON 数据
std::ifstream i("data.json");
json j;
i >> j;
// 将 JSON 转换成 std::map
std::map<std::string, std::string> my_map = j.get<std::map<std::string, std::string>>();
// 输出转换后的 std::map
for(auto const& pair: my_map) {
std::cout << pair.first << ": " << pair.second << std::endl;
}
return 0;
}
```
其中,`data.json` 文件中包含了一个 JSON 对象,例如:
```json
{
"name": "John",
"age": "30",
"city": "New York"
}
```
在上述代码中,我们首先从文件中读取了 JSON 数据,然后使用 `get()` 函数将其转换为 `std::map<std::string, std::string>` 类型,并最终输出了转换后的 `my_map` 对象。
阅读全文