C 數(shù)組轉(zhuǎn) JSON 串是一種常見(jiàn)的數(shù)據(jù)處理方式,我們可以利用這種方式將數(shù)組數(shù)據(jù)轉(zhuǎn)化為 JSON 串,便于在 Web 應(yīng)用中處理數(shù)據(jù)。下面我們將詳細(xì)介紹如何將 C 數(shù)組轉(zhuǎn)化為 JSON 串。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdbool.h> #include <json-c/json.h> int main(void) { int a[5] = {1, 3, 5, 7}; int size = sizeof(a) / sizeof(*a); int i; struct json_object *jobj = json_object_new_array(); for (i = 0; i < size; i++) { json_object_array_add(jobj, json_object_new_int(a[i])); } const char *json_string = json_object_to_json_string(jobj); printf("%s\n", json_string); json_object_put(jobj); return 0; }
在上面的示例代碼中,我們定義了一個(gè)整型數(shù)組,并將其轉(zhuǎn)化為 JSON 串。具體的步驟如下:
1. 計(jì)算數(shù)組的大小
int size = sizeof(a) / sizeof(*a);
2. 創(chuàng)建 JSON 數(shù)組對(duì)象
struct json_object *jobj = json_object_new_array();
3. 遍歷數(shù)組并向 JSON 數(shù)組對(duì)象中添加元素
for (i = 0; i < size; i++) { json_object_array_add(jobj, json_object_new_int(a[i])); }
4. 將 JSON 數(shù)組對(duì)象轉(zhuǎn)化為 JSON 串
const char *json_string = json_object_to_json_string(jobj);
5. 釋放 JSON 數(shù)組對(duì)象的內(nèi)存
json_object_put(jobj);
最終輸出的 JSON 串為:
[1,3,5,7]
以上就是將 C 數(shù)組轉(zhuǎn)化為 JSON 串的完整示例,使用 json-c 庫(kù)可以方便地處理數(shù)組數(shù)據(jù)。希望本文能對(duì)大家有所幫助。