C++是一種強類型語言,可以將變量定義為int、char、string等,但對于復雜的數據結構,如json,需要使用庫來解析和操作。在本文中,我們將介紹如何使用第三方庫將JSON格式的數據轉換為C++中的map。
#include#include "json.hpp"
using namespace std;
using json = nlohmann::json;
int main() {
string json_str = "{\"name\":\"張三\",\"age\":18,\"gender\":\"male\"}";
json j = json::parse(json_str);
mapm;
for (auto& x : j.items()) {
m[x.key()] = x.value().get();
}
for (auto& x : m) {
cout<< x.first<< " : "<< x.second<< endl;
}
return 0;
}
上面的代碼使用了json庫,將json字符串轉化為map。首先,我們需要定義一個json對象j,并使用json::parse方法將json字符串json_str轉化為json格式。
接下來,我們定義一個鍵值對的字符串型map。用auto& x : j.items()來遍歷json對象j中的每個項。
通過m[x.key()] = x.value().get<string>()操作,將遍歷到的json鍵值對轉換為map中的鍵值對。
最后,我們使用for循環遍歷map,輸出每個鍵值對的鍵和值。
上一篇vue 生產環境運行