在C語言中,我們常常需要將讀取到的數(shù)據(jù)轉(zhuǎn)化為JSON格式,這樣我們就能夠方便地進(jìn)行數(shù)據(jù)處理和傳輸。以下是一段示例代碼,展示了如何使用C語言將讀取到的數(shù)據(jù)轉(zhuǎn)化為JSON格式。
#include <stdio.h> #include <stdlib.h> #include <jansson.h> int main() { char *input = "{'name': 'John', 'age': 32, 'city': 'New York'}"; json_t *root; json_error_t error; // 解析JSON字符串 root = json_loads(input, 0, &error); // 判斷解析結(jié)果 if (!root) { fprintf(stderr, "error: on line %d: %s\n", error.line, error.text); return 1; } // 轉(zhuǎn)化為JSON格式 char *output = json_dumps(root, JSON_INDENT(4)); printf("Output: %s\n", output); // 釋放資源 free(output); json_decref(root); return 0; }
以上代碼中,我們首先使用json_loads函數(shù)將輸入的JSON字符串轉(zhuǎn)化為json_t類型的變量root。如果解析失敗,函數(shù)會(huì)返回NULL,我們需要通過json_error_t類型的變量error來獲取錯(cuò)誤信息。接著,使用json_dumps函數(shù)將root轉(zhuǎn)化為JSON格式的字符串。
通過以上方法,我們可以方便地將讀取到的數(shù)據(jù)轉(zhuǎn)化為JSON格式,并進(jìn)行進(jìn)一步的處理和傳輸。