C++是一種強類型的編程語言,它可以用來解析多條JSON數據。具體來說,解析JSON數據的過程包括兩個步驟:將JSON數據轉換為字符串,將字符串轉換為C++對象。以下是一個示例程序,展示了如何在C++中解析多條JSON數據。
#include <iostream>
#include <vector>
#include <nlohmann/json.hpp>
using json = nlohmann::json;
int main() {
// 創建JSON字符串數組
std::vector<std::string> json_strings = {
"{ \"name\" : \"Alice\", \"age\" : 20 }",
"{ \"name\" : \"Bob\", \"age\" : 30 }",
"{ \"name\" : \"Charlie\", \"age\" : 40 }"
};
// 解析JSON字符串
std::vector<json> json_objects;
for (const auto& str : json_strings) {
json_objects.push_back(json::parse(str));
}
// 輸出解析結果
for (const auto& obj : json_objects) {
std::cout << "Name: " << obj["name"].get<std::string>() << " Age: " << obj["age"].get<int>() << std::endl;
}
return 0;
}
該程序使用了開源JSON庫nlohmann/json,它提供了一系列方便易用的工具函數,可以幫助我們快速解析JSON數據。首先,我們創建了一個JSON字符串數組json_strings,其中包含了三條JSON數據。接著,我們使用for循環遍歷json_strings中的每個元素,并使用json::parse函數將其解析成json對象,存儲在json_objects數組中。
最后,我們遍歷json_objects數組中的每個元素,使用get函數獲取每個json對象中的屬性值,然后輸出到控制臺。在這里,我們獲取了屬性name和age的值,分別使用std::string和int類型的get函數獲取。