色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c++解析json數組

李中冰2年前9瀏覽0評論

C++解析JSON數組是一種非常常見的技術,因為JSON作為一種數據交換格式,在通過不同應用程序之間傳遞數據時經常使用。在下面的代碼中,我們將介紹如何使用C++解析JSON數組。

#include <iostream>
#include <string>
#include <json/json.h>
int main()
{
std::string jsonStr = "[{\"name\":\"Tom\",\"age\":18},{\"name\":\"Jerry\",\"age\":20}]";
Json::Value rootValue;
Json::Reader reader;
if (reader.parse(jsonStr, rootValue))
{
if (rootValue.isArray())
{
for (int i = 0; i < rootValue.size(); i++)
{
std::cout << "name: " << rootValue[i]["name"].asString() << ", ";
std::cout << "age: " << rootValue[i]["age"].asInt() << std::endl;
}
}
}
return 0;
}

在上面的代碼中,我們首先創建一個包含兩個JSON對象的JSON數組字符串。

std::string jsonStr = "[{\"name\":\"Tom\",\"age\":18},{\"name\":\"Jerry\",\"age\":20}]";

然后,我們創建一個Json::Value對象來存儲JSON數組解析結果,以及一個Json::Reader對象來解析JSON字符串。

Json::Value rootValue;
Json::Reader reader;

接下來,我們使用Json::Reader的parse方法來解析JSON字符串,并將解析結果存儲在Json::Value對象中。

if (reader.parse(jsonStr, rootValue))

然后,我們檢查Json::Value對象是否是一個JSON數組。如果是,則遍歷數組并輸出每個JSON對象中"name"和"age"屬性的值。

if (rootValue.isArray())
{
for (int i = 0; i < rootValue.size(); i++)
{
std::cout << "name: " << rootValue[i]["name"].asString() << ", ";
std::cout << "age: " << rootValue[i]["age"].asInt() << std::endl;
}
}

這樣,就完成了C++解析JSON數組的過程。