c JSON(C語言中解析和生成JSON數據的庫)是一個簡單而靈活的庫,它可以將JSON數據解析為普通的C結構或C++ STL容器。它也可以將C/C++對象序列化為JSON文本。litjson是c JSON的一個分支,它是一個比c JSON更小巧的庫,且保留其所有的功能。在這篇文章中,我們將利用litjson庫來讀取JSON文件。
在使用litjson庫前,首先需要下載安裝并包含頭文件。以下代碼描述了如何讀取JSON文件:
#include <iostream> #include <fstream> #include <cstdio> #include "litjson.h" using namespace std; int main(int argc,char ** argv){ ifstream inFile; inFile.open("test.json"); jsonReader reader; value root; char buffer[1024]; inFile.getline(buffer, 1024); if (reader.parse(buffer, root)) { cout << root["name"].asString() << endl; cout << root["id"].asInt() << endl; } inFile.close(); return 0; }
上述代碼中,我們首先打開一個文件test.json。然后,我們創建一個jsonReader對象,以及一個value對象(這是我們要將JSON數據讀入的地方)。我們定義了一個buffer大小為1024字節的字符數組,以便將讀取的內容存儲在內存中。接著,我們使用getline函數讀取JSON數據,并使用reader.parse函數將其解析到value對象中。
在解析JSON數據后,我們可以像使用普通的C++ map一樣來訪問value對象。在上面的例子中,我們使用了root["name"]來獲取JSON數據中的"name"屬性值,并使用root["id"]來獲取"id"屬性值。為了輸出這些值,我們簡單的使用cout流。
總之,使用litjson庫來讀取JSON文件是一項非常簡單的任務。只要您能正確鏈接和包含這個庫,然后按照本文提供的代碼程序,您就可以讀取JSON數據了。
上一篇python 視網膜照片
下一篇python 規范化