C語言是一門非常重要的編程語言,在處理數據的過程中,我們經常需要將表格數據轉換為JSON數據格式。下面我們將介紹如何使用C語言實現表格轉JSON。
#include <stdio.h> #include <stdlib.h> #include <string.h> //表格結構體 typedef struct{ int row_num; //行數 int col_num; //列數 char **data; //表格數據 }Table; //轉換函數 char *table_to_json(Table *t){ char *result = (char*)malloc(1024);//開辟內存空間 sprintf(result, "{\n\t\"row_num\":%d,\n\t\"col_num\":%d,\n\t\"data\":[\n", t->row_num, t->col_num); //將表格數據按照JSON格式存儲 for(int i=0;irow_num;i++){ strcat(result, "\t\t["); for(int j=0;j col_num;j++){ strcat(result, "\""); strcat(result, t->data[i*t->col_num+j]); strcat(result, "\","); } result[strlen(result)-1] = '\0'; strcat(result, "],\n"); } result[strlen(result)-2] = '\0'; strcat(result, "\n\t]\n}"); return result; } int main(){ //簡單的例子 Table t; t.row_num = 2; t.col_num = 3; t.data = (char**)malloc(sizeof(char*)*t.row_num*t.col_num); for(int i=0; i 代碼中,我們定義了一個表格結構體Table,其中包含表格的行數row_num、列數col_num和數據data。接著我們就可以用table_to_json函數將表格t轉換成JSON數據格式result。 對于輸入數據,在main函數中先初始化一個簡單的例子,包含2行3列數據。輸出的JSON數據格式如下: { "row_num":2, "col_num":3, "data":[ ["r0-c0","r0-c1","r0-c2"], ["r1-c0","r1-c1","r1-c2"] ] } 從輸出結果可以看到,我們成功地將一個簡單的表格數據轉換成了JSON數據格式。這個代碼可以用于處理一些簡單的表格數據,但是對于大規模的數據轉換來說,需要不斷優化和修改。