在進行數據傳輸時,C語言中的 JSON 庫可用于將復雜數據進行序列化,以便它可以進行網絡傳輸或存儲到文件系統中。接下來我們將學習如何使用JSON庫序列化多層JSON。
/* 包含頭文件 */ #include "cJSON.h" int main(void) { /* 創建嵌套JSON */ cJSON *root = cJSON_CreateObject(); // 最外層 JSON cJSON *books = cJSON_CreateArray(); // 二級 JSON cJSON *book1 = cJSON_CreateObject(); // 三級 JSON cJSON_AddStringToObject(book1, "title", "Programming in C"); cJSON_AddStringToObject(book1, "author", "Stephen Kochan"); cJSON_AddItemToArray(books, book1); /* 將多層JSON添加到root中 */ cJSON_AddItemToObject(root, "books", books); /* 打印JSON字符串 */ char *json_str = cJSON_Print(root); printf("%s\n", json_str); /* 釋放內存 */ cJSON_Delete(root); free(json_str); return 0; }
在代碼示例中,我們使用cJSON庫創建了一個包含多層JSON的數據結構。我們首先在最外層創建了一個cJSON_CreateObject()
對象,然后在它的內部創建了一個cJSON_CreateArray()
對象。在數組中,我們創建了一個包含title
和author
值的嵌套對象,再將它添加到二級JSON中。
最后,我們將二級JSON添加到最外層對象中,然后使用cJSON_Print()
函數將其序列化為JSON字符串。JSON字符串的輸出如下:
{ "books": [ { "title": "Programming in C", "author": "Stephen Kochan" } ] }
以上就是關于使用C語言中的JSON庫序列化多層JSON的教程。有了這個知識基礎,你可以輕松地將復雜的數據結構序列化為JSON,以適應網絡傳輸或存儲到文件系統中的需求。
上一篇html彈出的頁面代碼