JSON(JavaScript Object Notation)是一種輕巧的數據交換格式,常用于 Web 應用程序中,以便把數據從服務器傳送到客戶端。而在 C 語言中,我們可以使用 JSON-C 庫將 JSON 格式的數據轉換為 C 語言的數據格式。
JSON-C 庫提供了一些 API 函數,可以將 JSON 數據轉換為 C 語言中的字符串形式,也可以將字符串形式的 JSON 數據轉換為 C 語言中的結構體。接下來,我們將介紹如何使用 JSON-C 庫將 JSON 數據轉換為 TXT 格式的文本字符串。
#include <stdio.h>
#include <stdlib.h>
#include <json-c/json.h>
int main() {
// 定義 JSON 數據
const char *json_string = "{ \"name\":\"張三\", \"age\":20 }";
// 解析 JSON 數據
json_object *json_obj = json_tokener_parse(json_string);
if (!json_obj) {
printf("Error: Unable to parse data!\n");
exit(EXIT_FAILURE);
}
// 遍歷 JSON 數據,將其轉換為 TXT 格式的字符串
char *txt_str = json_object_to_json_string(json_obj);
// 打印轉換后的 TXT 格式的字符串
printf("%s\n", txt_str);
// 釋放內存
free(txt_str);
json_object_put(json_obj);
return 0;
}
在上面的代碼中,我們使用 json_tokener_parse() 函數將 JSON 數據解析為 json_object 類型的對象,然后使用 json_object_to_json_string() 函數將其轉換為 TXT 格式的字符串。最后,我們通過 printf() 函數將轉換后的 TXT 格式的字符串打印出來。需要注意的是,在使用 json_object_to_json_string() 函數轉換完后,需要手動釋放內存。