JSON(JavaScript Object Notation)是現代 Web 應用程序的通用數據格式。它比 XML 更加簡單,易于閱讀和編寫。在 C 語言中,可以使用 cJSON 庫來處理 JSON 數據。本文將介紹如何處理包含多個數組的 JSON 數據。
// 示例 JSON 數據 { "name": "張三", "age": 20, "hobbies": [ "音樂", "旅游", "閱讀" ], "skills": [ { "name": "C", "level": "熟練" }, { "name": "Python", "level": "入門" }, { "name": "Java", "level": "了解" } ] }
對于包含單個數組的 JSON 數據,可以使用 cJSON_GetObjectItem 函數來獲取數組對象。例如,獲取 hobbies 數組:
cJSON* root = cJSON_Parse(json_str); cJSON* hobbies = cJSON_GetObjectItem(root, "hobbies");
對于包含多個數組的 JSON 數據,可以先使用 cJSON_GetObjectItem 函數獲取數組對象,再使用 cJSON_GetArrayItem 函數獲取數組元素。例如,獲取 skills 數組中第一個元素的 name 值:
cJSON* root = cJSON_Parse(json_str); cJSON* skills = cJSON_GetObjectItem(root, "skills"); cJSON* first_skill = cJSON_GetArrayItem(skills, 0); cJSON* name = cJSON_GetObjectItem(first_skill, "name"); char* name_str = cJSON_Print(name); printf("name: %s\n", name_str);
注意,cJSON_GetArrayItem 返回的是 cJSON 對象,需要再次使用 cJSON_GetObjectItem 獲取其中具體的屬性值。
以上就是關于在 C 語言中處理包含多個數組的 JSON 數據的介紹。