JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,被廣泛地用于前后端數據傳輸、Web API 的數據返回等。在 C++ 中,我們可以使用第三方庫進行 JSON 的解析,比如流行的 jsoncpp。使用 jsoncpp 可以輕松地將字符串解析為 json 對象,并對其進行訪問和修改。
首先,我們需要下載并安裝 jsoncpp 庫。安裝完成后,我們就可以開始使用它了。
#include "json/json.h"
#include <iostream>
using namespace std;
int main() {
// 定義 json 字符串
string str = "{\"name\":\"張三\",\"age\":18}";
// 解析 json
Json::Reader reader;
Json::Value value;
if (reader.parse(str, value)) {
// 訪問 json 的屬性
string name = value["name"].asString();
int age = value["age"].asInt();
// 輸出屬性值
cout << "姓名:" << name << endl;
cout << "年齡:" << age << endl;
}
return 0;
}
在這個示例中,我們首先定義了一個 json 字符串,其中包含一個 name 屬性和一個 age 屬性。然后使用 Json::Reader 類的 parse() 方法將其解析為一個 Json::Value 對象。使用`vallue["key"].XXX()`這樣的語法可以訪問 json 對象中的屬性,并對其進行操作。
jsoncpp 還提供了更多操作方式,比如將 json 對象序列化為 json 字符串、將 json 對象打印到控制臺等等。有關更多操作的詳細信息,可以參考 jsoncpp 的官方文檔。
上一篇c++拼接json數組
下一篇c++生成json串