JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,眾所周知,C語言是一種強大的編程語言, C語言可以通過解析和解碼json數據來執行數據交換,下面就讓我們來探討一下C語言如何對JSON鍵值進行提取。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <jansson.h> int main() { char *json_string = "{ \"name\":\"Alice\", \"age\":20, \"score\":91.5 }"; json_t *json, *name, *age, *score; json_error_t error; json = json_loads(json_string, 0, &error); if(!json) { printf("error: on line %d: %s\n", error.line, error.text); return -1; } name = json_object_get(json, "name"); age = json_object_get(json, "age"); score = json_object_get(json, "score"); printf("Name: %s\n", json_string_value(name)); printf("Age: %d\n", json_integer_value(age)); printf("Score: %f\n", json_real_value(score)); json_decref(json); return 0; }
上面是一個完整的例子,例子中用到了一個開源的 C語言 JSON解析庫 - jansson,可以通過json_loads()函數將JSON字符串解析成JSON對象。接著,我們可以通過json_object_get()函數從JSON對象中獲取指定的鍵值對。
上面的代碼中,JSON字符串包含了三個鍵值對:name,age,score。由于我們知道每個鍵的名稱,所以我們通過json_object_get()函數來獲取它們的值。隨后,我們可以使用jansson庫中特定的函數來獲取每個鍵對應的值,并且我們可以在控制臺輸出這些值。
這是一個簡單的C語言程序,只需要幾行代碼就能輕松地從JSON字符串中提取出需要的鍵值對,而且在C語言中都是使用簡單的函數調用來實現的,十分方便。如果我們需要將JSON數據在C程序之間傳遞,或者通過C語言讀取JSON數據,那么這個庫就是解決方案之一。
上一篇mysql寫選擇題表
下一篇html定位代碼方法