C++ 如何解析{"id":"System","contex":"HudThemeState","types":"Int","value":"12"}
时间: 2023-12-30 10:02:56 浏览: 36
C++可以使用JSON库来解析JSON字符串。以下是使用RapidJSON库解析给定的JSON字符串的示例代码:
```cpp
#include <iostream>
#include "rapidjson/document.h"
int main() {
const char* json = "{\"id\":\"System\",\"contex\":\"HudThemeState\",\"types\":\"Int\",\"value\":\"12\"}";
rapidjson::Document document;
document.Parse(json);
if (document.HasParseError()) {
std::cout << "Failed to parse JSON." << std::endl;
return 1;
}
if (document.HasMember("id") && document["id"].IsString()) {
std::string id = document["id"].GetString();
std::cout << "id: " << id << std::endl;
}
if (document.HasMember("contex") && document["contex"].IsString()) {
std::string contex = document["contex"].GetString();
std::cout << "contex: " << contex << std::endl;
}
if (document.HasMember("types") && document["types"].IsString()) {
std::string types = document["types"].GetString();
std::cout << "types: " << types << std::endl;
}
if (document.HasMember("value") && document["value"].IsString()) {
std::string value = document["value"].GetString();
std::cout << "value: " << value << std::endl;
}
return 0;
}
```
这段代码使用RapidJSON库解析JSON字符串,并提取出"id"、"contex"、"types"和"value"字段的值。你可以根据需要修改代码来处理其他字段。