在C語言中,讀取txt文件中的數據是一項非常基礎的任務。而使用json數據格式來存儲數據,則更為便于結構化管理和解析。下面我們將講解如何在C語言中讀取txt文件中的json格式數據。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <jansson.h> int main() { FILE *fp; char text[1000]; fp = fopen("data.txt", "r"); // 打開txt文件 if (fp == NULL) { printf("文件打開失敗"); exit(1); } // 讀取文件內容 fread(text, sizeof(char), 1000, fp); fclose(fp); // 解析json數據 json_error_t error; json_t *root = json_loads(text, 0, &error); if (root == NULL) { printf("Json數據解析失敗,位置:%d", error.line); exit(1); } // 獲取json數據值 json_t *name = json_object_get(root, "name"); json_t *age = json_object_get(root, "age"); printf("姓名:%s,年齡:%d", json_string_value(name), json_integer_value(age)); return 0; }
上面的代碼將讀取名為"data.txt"的文件,在其中讀取json格式數據。首先我們通過fopen()函數打開文件,然后通過fread()函數讀取文件內容。接著,我們通過json_loads()函數解析json格式數據,得到一個json_t類型的指針root。然后使用json_object_get()函數獲取json數據中的值,并使用json_string_value()和json_integer_value()函數將數據值轉換為相應的類型。
總之,使用C語言讀取json格式數據的方法非常簡單,只需使用jansson庫中提供的相關函數即可。通過以上介紹,相信你已經對如何在C語言中讀取json格式數據有了更深入的了解和掌握。