如何在 C 項(xiàng)目中讀取 JSON 文件?以下是一個(gè)簡(jiǎn)單的示例程序。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <jansson.h> int main(void) { char *filename = "example.json"; json_t *root; json_error_t error; // 從文件中加載 JSON 數(shù)據(jù) root = json_load_file(filename, 0, &error); if (root) { // JSON 數(shù)據(jù)已加載 // 在此處使用 JSON API 處理數(shù)據(jù) json_decref(root); } else { // 發(fā)生錯(cuò)誤 fprintf(stderr, "error: on line %d: %s\n", error.line, error.text); return EXIT_FAILURE; } return EXIT_SUCCESS; }
上述代碼包含以下步驟:
- 第一步是包含需要的頭文件。
- 第二步是聲明變量,用于存儲(chǔ)文件名、JSON 根節(jié)點(diǎn)和錯(cuò)誤信息。
- 第三步是使用 json_load_file() 函數(shù)從文件中加載 JSON 數(shù)據(jù),并將根節(jié)點(diǎn)存儲(chǔ)在變量 root 中。
- 第四步是檢查 root 是否為 NULL,如果是,則說明加載失敗,可以使用 json_error_t 結(jié)構(gòu)體中的信息進(jìn)行錯(cuò)誤處理。否則,可以使用 JSON API 處理數(shù)據(jù)。
- 最后,釋放根節(jié)點(diǎn)并返回成功或失敗的狀態(tài)。
在使用 JSON API 處理數(shù)據(jù)之前,請(qǐng)確保已閱讀文檔,并熟悉 API 當(dāng)中的相關(guān)函數(shù)。