對於cjson的使用,我主要是用來模擬遠端伺服器端返回的乙個
json
型別的目錄結構,客戶端進行獲取並進行解析,把解析出來的目錄按照原本的結構顯示在本地。
cjson
是乙個超輕巧,攜帶方便,單檔案,簡單的可以作為
ansi-c
標準的json
解析器。
進入cjson.h標頭檔案中可以檢視cjson的相關資訊。主要包括:cjson結構體、cjson型別、cjson的一些內部的函式等。
// cjson
結構體:
typedef
struct cjson cjson;
// cjson
型別:#define
cjson_false 0
#define
cjson_true 1
#define
cjson_null 2
#define
cjson_number 3
#define
cjson_string 4
#define
cjson_array 5
#define
cjson_object 6
用法: 1
、需要包含
cjson.h
標頭檔案,然後和
cjson.c
或庫檔案
libcjson.a
一起編譯即可使用。 2
、具體函式用法詳見
cjson.h中的
注釋 更多介紹機器使用請參考:
基本**如下:
#include
#include
#include
#include
"cjson.h"
char
* create1()
char
* create2()
char
* create3() ;
root=cjson_createobject();
cjson_additemtoobject(root, "root", img=cjson_createobject());
cjson_addnumbertoobject(img,"key",800);
cjson_addnumbertoobject(img,"value",600);
cjson_addstringtoobject(img,"title","sugon");
cjson_additemtoobject(img,"child",thm=cjson_createobject());
cjson_addnumbertoobject(thm,"key",125);
cjson_addstringtoobject(thm,"value","100");
cjson_addstringtoobject(thm,"url","www.sugon.com");
cjson_additemtoobject(img,"nums", cjson_createintarray(nums,4));
out=cjson_print(root);
cjson_delete(root);
return out; }
char
* create4()
void
parse1(char *out)
} }
void
parse2(char *out)
child = cjson_getobjectitem(root,"child");
if(child)
} }
} }
intmain()
執行結果如下圖所示:
上圖為建立json結構體和解析後的結果圖(分別為create1,parse1、create2,parse2),後兩個(create3、create4)建立了沒有進行解析,因為很簡單,自己動手試試吧!相信自己,有些事情其實還是會很容易做到的。
注: ╰☆奮鬥ing❤孩子`
原文:
cjson構建 cJSON的構造和解析
對於cjson的使用,我主要是用來模擬遠端伺服器端返回的乙個json型別的目錄結構,客戶端進行獲取並進行解析,把解析出來的目錄按照原本的結構顯示在本地。cjson是乙個超輕巧,攜帶方便,單檔案,簡單的可以作為ansi c標準的json解析器。cjson結構體 typedef struct cjson...
CJson使用(構造和解析)
cjson,目前來說,就只有兩個檔案,乙個cjson.c 乙個cjson.件。工程裡新增這兩個檔案就可以使用cjson構造或者解析相應的檔案。cjson cjson createobject 建立乙個json物件,返回乙個cjson結構體型別的指標。cjson cjson createarray 建...
cJSON的構建和解析
一 cjson構建 define module num 3 int encode json cjson root cjson createobject 在根節點建立cjson物件 root cjson name list array cjson createarray 建立陣列物件 name lis...