C語(yǔ)言是一門廣泛應(yīng)用于系統(tǒng)編程、嵌入式開(kāi)發(fā)等領(lǐng)域的計(jì)算機(jī)編程語(yǔ)言。在C語(yǔ)言中,我們可以通過(guò)一些庫(kù)函數(shù)將集合(比如數(shù)組)轉(zhuǎn)換成JSON字符串。下面我們看一下如何實(shí)現(xiàn)。
#include <stdio.h> #include <jansson.h> int main() { int array[] = {1, 2, 3, 4, 5}; int size = sizeof(array)/sizeof(int); json_t *json_array; json_array = json_array(); // 創(chuàng)建一個(gè)空的JSON數(shù)組 // 將每個(gè)元素插入到JSON數(shù)組中 for (int i = 0; i < size; i++) { json_t *elem = json_integer(array[i]); json_array_append(json_array, elem); } // 把JSON數(shù)組轉(zhuǎn)成字符串 char *json_string = json_dumps(json_array, JSON_INDENT(4)); printf("%s\n", json_string); // 釋放內(nèi)存 free(json_string); json_decref(json_array); return 0; }
在上述代碼中,我們使用了jansson庫(kù),它是一個(gè)開(kāi)源的JSON編解碼器。我們先定義了一個(gè)整型數(shù)組,然后通過(guò)json_array函數(shù)創(chuàng)建一個(gè)空的JSON數(shù)組,并使用json_array_append函數(shù)把元素插入到數(shù)組中。最后,我們使用json_dumps函數(shù)將JSON數(shù)組轉(zhuǎn)換成字符串。
該程序執(zhí)行后會(huì)輸出如下結(jié)果:
[ 1, 2, 3, 4, 5 ]
這就是我們需要的將集合轉(zhuǎn)換成JSON字符串的結(jié)果。