在C語言中,我們可以通過使用JSON以及類來將數(shù)據(jù)存入我們的程序中。JSON是一種輕量級的數(shù)據(jù)交換格式,常用于前后端的數(shù)據(jù)交互。
在使用C語言進(jìn)行JSON操作之前,需要先安裝JSON-C。JSON-C是一個C語言編寫的JSON庫,可以輕松地將JSON文本轉(zhuǎn)換為C語言數(shù)據(jù)類型。
下面是將JSON文本存入類中的基本實(shí)現(xiàn):
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <json-c/json.h> typedef struct{ char *name; int id; float score; }Student; int main(){ Student student; json_object *jstudent = json_object_new_object(); json_object_object_add(jstudent, "name", json_object_new_string("張三")); json_object_object_add(jstudent, "id", json_object_new_int(101)); json_object_object_add(jstudent, "score", json_object_new_double(98.5)); student.name = json_object_get_string(json_object_object_get(jstudent, "name")); student.id = json_object_get_int(json_object_object_get(jstudent, "id")); student.score = json_object_get_double(json_object_object_get(jstudent, "score")); printf("學(xué)生信息:\n姓名:%s\n學(xué)號:%d\n成績:%f", student.name, student.id, student.score); return 0; }
在以上代碼中,我們首先定義了一個名為Student的結(jié)構(gòu)體,來存放學(xué)生的信息。接著,我們使用JSON-C中的json_object_new_object函數(shù)創(chuàng)建了一個新的JSON對象jstudent,并通過json_object_object_add函數(shù)將學(xué)生的信息以鍵值對的形式添加到了對象中。
最后,我們通過json_object_get_string、json_object_get_int、json_object_get_double函數(shù)將JSON對象中的數(shù)據(jù)提取出來,并存入了我們定義的Student結(jié)構(gòu)體中。這樣,我們就可以方便地通過類來存儲JSON數(shù)據(jù)了。