json c 0 12 使用介紹

2021-09-05 09:43:55 字數 2450 閱讀 6818

**:

常用函式:

1、json結構體初始化

struct json_object* json_object_new_object() 

2、向json結構體中新增key-value對

void json_object_object_add( struct json_object* dest, const char *key, struct json_object *value )

3、返回json結構體的字串格式

const char* json_object_to_json_string(struct json_object *obj)

4、基本資料型別轉換為json結構體

struct json_object* json_object_new_string(const char *s)

struct json_object* json_object_new_int(int32_t i)

struct json_object* json_object_new_int64(int64_t i)

struct json_object* json_object_new_boolean(json_bool b)

struct json_object* json_object_new_double(double d)

5、json結構體列印

json_object_to_file( jsonfile , json_res );   //列印到檔案

printf("%s", json_object_to_json_string(json_res) );  //列印到標準輸出

6、 將乙個json檔案轉換成object物件:

struct json_object* json_object_from_file(char *filename)

舉例:  

json_object    *pobj = null;

pobj = json_object_from_file("/home/boy/tmp/test/jsontest/test.json");

7、將json-object寫回檔案

int json_object_to_file(char *filename, struct json_object *obj)

舉例:json_object_from_file("test.json", pobj);

8、刪除乙個物件

void json_object_object_del(struct json_object* jso, const char *key);

9、增加乙個物件

void json_object_object_add(struct json_object* jso, const char *key, struct json_object *val);

舉例:json_object_object_add(pobj, "name", json_object_new_string("andy"));

json_object_object_add(pobj, "age", json_object_new_int(200));

10、釋放物件

void json_object_put(struct json_object *jso);

使用舉例

(1): 新建乙個x.json檔案

(2):  程式

#include   

#include   

#include   

#include   

#include    "json.h"

void  getvalbykey(json_object * jobj, const  char  *sname)}}

int  main(void)

");//printf("new_obj.to_string()=%s\n", json_object_to_json_string(pobj));

//json_parse(pobj);

pobj = json_object_from_file("/home/boy/tmp/test/jsontest/test.json");

getvalbykey(pobj, "foo");

json_object_object_del(pobj, "foo");

json_object_object_add(pobj, "foo", json_object_new_string("fark"));

json_object_object_add(pobj, "age", json_object_new_int(200));

getvalbykey(pobj, "age");

json_object_to_file("/home/boy/tmp/test/jsontest/new.json", pobj);

json_object_put(pobj);

return 0;

}from:

json c使用 介紹

3 函式介紹 參考文章 簡單介紹下json c庫的一些函式。在編譯前需要linux pc上確認以下被安裝 apt get install autoconf automake libtool.configure cc arm linux gcc host arm linux prefix pwd in...

json C使用小結

json c 0.7庫使用小結 json c這個庫 可以很方便的生成js的json字串.主要幾個函式如下 json object to file filepath,json object 將json object寫到檔案中 json object from file filepath 從檔案中讀出j...

json c 庫的使用方法

引入json c的庫 json c的讀寫操作 讀json c json object pobj null pobj json object from file bob.json 讀檔案裡的資料 pval json object object get jobj,sname type json obje...