隨著互聯網技術的不斷發展,越來越多的開發人員開始采用 JSON 格式來存儲和傳輸數據。而在 C 語言開發中,通過 JSON 轉換類庫可以輕松地對 JSON 數據進行操作和處理,提高程序開發的效率。
JSON_C JSON_C 是一款開源的 C 語言 JSON 解析類庫。該類庫支持手動解析和自動解析兩種方式,可以在 Linux、Windows、MacOS 等操作系統上運行。 以下是一個使用 JSON_C 進行解析并輸出 JSON 數據的示例: #include#include int main() { const char *json_str = "{\"key1\":\"value1\",\"key2\":\"value2\"}"; struct json_object *json_obj = json_tokener_parse(json_str); printf("%s\n", json_object_to_json_string(json_obj)); json_object_put(json_obj); return 0; } JSON_Parse JSON_Parse 是一款輕量級的 JSON 解析類庫,使用該類庫可以在 C 語言中輕松地對 JSON 數據進行解析和操作,支持對 JSON 數據的讀取、寫入和查詢等功能。 以下是一個使用 JSON_Parse 實現讀取 JSON 文件并輸出 JSON 數據的示例: #include #include #include "json.h" int main() { FILE *fp; long lSize; char *buffer; fp = fopen("example.json", "rb"); if (!fp) { printf("Failed to open the file.\n"); return 1; } fseek(fp, 0L, SEEK_END); lSize = ftell(fp); rewind(fp); buffer = calloc(1, lSize + 1); if (!buffer) { fclose(fp); printf("Failed to allocate memory.\n"); return 1; } if (1 != fread(buffer, lSize, 1, fp)) { fclose(fp); free(buffer); printf("Failed to read the file.\n"); return 1; } fclose(fp); struct json_object *json_obj = json_tokener_parse(buffer); free(buffer); printf("%s\n", json_object_to_json_string(json_obj)); json_object_put(json_obj); return 0; } 以上是兩個常用的 C 語言 JSON 轉換類庫的示例代碼,開發人員在實際開發中可以根據需求進行選擇和使用。