在C語言中,寫JSON數據可以使用第三方庫來完成。其中比較流行的庫有 cJSON 和 Jansson。本文將介紹如何使用 cJSON 來寫 JSON 數據。
首先需要下載 cJSON 庫,并添加到項目中。在使用時,需要先創建一個 cJSON 對象。
cJSON *root = cJSON_CreateObject();
創建完對象后,就可以向其中添加數據了。常見的數據類型有字符串、數字、布爾值和數組。在 cJSON 中,字符串數據使用 c 字符串類型,數字使用 double 類型,布爾值使用 int 類型,數組使用 cJSON 數組類型。
//添加字符串數據 cJSON_AddStringToObject(root,"name","Tom"); //添加數字數據 cJSON_AddNumberToObject(root,"age",20); //添加布爾值數據 cJSON_AddBoolToObject(root,"isStudent",1); //添加數組數據 cJSON *array = cJSON_CreateArray(); cJSON_AddItemToArray(array,cJSON_CreateString("apple")); cJSON_AddItemToArray(array,cJSON_CreateString("banana")); cJSON_AddItemToArray(array,cJSON_CreateString("orange")); cJSON_AddItemToObject(root,"fruit",array);
添加完數據后,可以使用 cJSON_Print() 函數將 cJSON 對象轉換成 c 字符串。
char *jsonStr = cJSON_Print(root); printf("%s\n",jsonStr);
如果需要將 cJSON 對象寫入文件,則可以使用 cJSON_PrintToFile() 函數。
FILE *fp = fopen("example.json","w"); cJSON_PrintToFile(root,fp); fclose(fp);
最后需要釋放 cJSON 對象的內存空間。
cJSON_Delete(root);
至此,cJSON 的使用就介紹完了。在實際使用中,需要根據具體情況靈活調整代碼。
上一篇dojo 解析json
下一篇python 爬最新新聞