在C語言中,有時需要將JSON數組轉換為字符串數組。這樣可以方便地對JSON進行解析和處理。下面我們來具體介紹如何實現這個過程。
#include <stdio.h> #include <jansson.h> int main(void) { // 定義JSON數組 json_t *json_arr = json_array(); json_t *json_e1 = json_string("Hello"); json_t *json_e2 = json_real(3.14); json_array_append(json_arr, json_e1); json_array_append(json_arr, json_e2); // 轉換成字符串數組 int len = json_array_size(json_arr); const char *strings[len]; for (int i = 0; i< len; i++) { json_t *elem = json_array_get(json_arr, i); if (json_is_string(elem)) { strings[i] = json_string_value(elem); } else if (json_is_real(elem)) { strings[i] = json_real_value(elem); } } // 輸出結果 for (int i = 0; i< len; i++) { printf("%s ", strings[i]); } printf("\n"); // 釋放內存 json_decref(json_arr); return 0; }
在代碼中,我們首先定義了一個JSON數組并向其中添加了兩個元素,一個字符串和一個實數。然后,使用json_array_size函數獲取JSON數組的長度,即元素個數。接下來,創建一個常量字符串數組,并使用for循環遍歷JSON數組的每一個元素。如果元素是字符串類型,則將其轉換為C字符串;如果元素是實數類型,則將其轉換為C浮點數。最后,輸出轉換后的結果。
上一篇vue 獲取標簽數據
下一篇c# 封裝json