std::string 转 json
时间: 2024-08-15 12:08:00 浏览: 59
在C++中,将`std::string`转换成JSON(JavaScript Object Notation)通常需要借助外部库,如RapidJSON、nlohmann/json等。以下是使用nlohmann/json库的一个简单示例:
```cpp
#include <nlohmann/json.hpp>
// 假设你有一个std::string包含 JSON 字符串
std::string jsonString = "{\"name\":\"John\", \"age\":30}";
// 使用 nlohmann::json 将字符串解析为 JSON 对象
nlohmann::json jsonObject;
try {
jsonObject = nlohmann::json::parse(jsonString);
} catch (const nlohmann::json::parse_error& e) {
// 处理解析错误
std::cout << "Error parsing JSON: " << e.what() << '\n';
}
// 现在你可以像操作普通对象一样操作 jsonObject
std::cout << "Name: " << jsonObject["name"].get<std::string>() << "\n";
```
在这个例子中,首先包含了nlohmann/json库,然后尝试将`jsonString`解析为`jsonObject`。如果字符串不是有效的JSON,会抛出`parse_error`异常。
阅读全文