JSON是一種輕量級的數據交換格式,常用于Web應用中。在實際開發中,有時需要將C語言數據轉換為JSON格式。以下是一些常見的方法。
// 假設有以下結構體: typedef struct { int id; char name[20]; } Person; // 方法1:手動構造JSON字符串 void person_to_json(Person p, char* json) { sprintf(json, "{ \"id\": %d, \"name\": \"%s\" }", p.id, p.name); } // 方法2:使用第三方庫:cJSON #include "cJSON.h" cJSON* person_to_json(Person p) { cJSON* root = cJSON_CreateObject(); cJSON_AddNumberToObject(root, "id", p.id); cJSON_AddStringToObject(root, "name", p.name); return root; } // 使用方法2的示例: Person p = { 123, "Tom" }; cJSON* root = person_to_json(p); char* json_str = cJSON_Print(root); printf("%s\n", json_str); // 輸出:{"id":123,"name":"Tom"} // 記得在最后釋放內存! cJSON_Delete(root); free(json_str);
通過這些方法,就可以方便地將C語言數據轉換為JSON格式。同時,也可以根據實際需求選擇不同的方法,以達到最佳的效果。