在開發(fā)過程中,經(jīng)常會需要將字符串轉化成JSON對象,這就需要使用C語言中對應的函數(shù)。下面就讓我們來了解一下如何使用C語言把字符串轉化成JSON。
#include <stdio.h> #include <string.h> #include <stdlib.h> #include <jansson.h> int main() { const char *str = "{\"name\":\"張三\",\"age\":25}"; json_error_t error; json_t *root = json_loads(str, 0, &error); if (!root) { printf("json_loads error on line %d: %s\n", error.line, error.text); return EXIT_FAILURE; } const char *name = json_string_value(json_object_get(root, "name")); int age = json_integer_value(json_object_get(root, "age")); printf("name: %s, age: %d\n", name, age); json_decref(root); return EXIT_SUCCESS; }
這段代碼使用了jansson庫,其中json_loads()函數(shù)可以把字符串轉化成JSON對象。若轉化不成功則返回NULL,同時在error參數(shù)中保存了錯誤信息。在這里我們使用了一個固定的JSON字符串,但實際使用中可以通過讀取文件或者從網(wǎng)絡獲取JSON字符串。
JSON對象是一種鍵值對的數(shù)據(jù)格式,我們可以通過json_object_get()函數(shù)獲取對象中指定鍵對應的值。在這里我們通過“name”和“age”鍵獲取值,類型分別為字符串和整數(shù)。
最后調(diào)用json_decref()函數(shù)釋放JSON對象。
上一篇python 的注釋符
下一篇Idea設置vue高亮