C語言中的JSON轉換可以通過使用第三方庫Jansson來完成。JSON是一種輕量級的數據交換格式,可以用于各種編程語言之間的數據傳輸。
// 將JSON字符串轉換為JSON對象 json_t *root; json_error_t error; root = json_loads("{\"name\":\"Tom\",\"age\":18}", 0, &error); // 將JSON對象轉換為字符串 char *json_string = json_dumps(root, JSON_COMPACT); printf("%s\n", json_string);
首先,我們需要使用json_loads函數將JSON字符串轉換為JSON對象。這個函數需要傳遞3個參數:要轉換的JSON字符串、一個標志位和一個指向json_error_t結構體的指針。如果字符串成功轉換為JSON對象,則返回一個指向json_t結構體的指針。否則,返回NULL。
接著,我們可以使用json_dumps函數將JSON對象轉換為字符串。這個函數需要傳遞2個參數:要轉換的JSON對象和一個標志位。如果轉換成功,則返回一個指向字符串的指針。否則,返回NULL。
在將JSON對象轉換為字符串時,我們可以通過傳遞不同的標志位來控制輸出的字符串格式。例如,JSON_COMPACT標志位表示壓縮格式,JSON_INDENT(n)標志位表示縮進n個空格的格式。
這樣,我們就可以通過以上代碼在C語言中進行JSON字符串和JSON對象之間的轉換了。