如果您想從JSON格式的字符串中獲取值,可以使用C語言提供的JSON庫來幫助您完成這個任務(wù)。下面讓我們來看一些示例代碼:
#include <stdio.h> #include <stdlib.h> #include <jansson.h> int main() { const char *json_str = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}"; json_t *root; json_error_t error; root = json_loads(json_str, 0, &error); if (!root) { fprintf(stderr, "error: on line %d: %s\n", error.line, error.text); return 1; } json_t *name = json_object_get(root, "name"); const char* name_val = json_string_value(name); printf("My name is %s. ", name_val); json_t *age = json_object_get(root, "age"); printf("I am %d years old. ", json_integer_value(age)); json_t *city = json_object_get(root, "city"); const char* city_val = json_string_value(city); printf("I live in %s. ", city_val); json_decref(root); return 0; }
在上面的代碼中,我們首先將JSON格式的字符串解析成一個JSON對象,然后通過使用json_object_get()
函數(shù)來獲取需要的鍵值對的值,最后打印輸出所需結(jié)果,并通過json_decref()
函數(shù)釋放JSON對象。
除了上面的代碼示例,C語言提供了很多其他的JSON庫,例如cJSON、Jansson、YAJL等。您可以根據(jù)自己的需要選擇合適的庫來處理JSON數(shù)據(jù)。
上一篇c 獲取json 字段
下一篇groovy生成json