在進行 Web 開發中,常常需要將數據庫中的數據轉換為 JSON 格式用于前端展示。本文將介紹使用 C 語言將數據庫數據轉換為 JSON 格式的方法。
首先,我們需要使用 C 語言中的第三方庫 cJSON,它是一個輕量級的 JSON 解析器和生成器。我們可以在官網下載 cJSON 的源代碼并添加到項目中。
#include "cJSON.h"
接下來,我們使用 SQLite3 的函數進行數據庫操作,將查詢結果存儲在 cJSON 數據結構中,并將其轉換為字符串類型。
cJSON *root = cJSON_CreateArray(); sqlite3_stmt *stmt; sqlite3_prepare_v2(database, query, -1, &stmt, NULL); int result = sqlite3_step(stmt); while (result == SQLITE_ROW) { int columns = sqlite3_column_count(stmt); cJSON *item = cJSON_CreateObject(); for (int i = 0; i< columns; i++) { const char *name = sqlite3_column_name(stmt, i); const char *value = (const char*) sqlite3_column_text(stmt, i); cJSON_AddItemToObject(item, name, cJSON_CreateString(value)); } cJSON_AddItemToArray(root, item); result = sqlite3_step(stmt); } sqlite3_finalize(stmt); char* json_str = cJSON_Print(root);
最后,我們需要釋放 cJSON 的內存空間和 SQLite3 執行查詢的資源。
cJSON_Delete(root); sqlite3_close(database);
通過以上代碼,我們便可以將數據庫中的數據轉換為 JSON 格式,并發送給前端進行展示。在實際項目中,我們可以根據需求對 JSON 進行定制化處理,例如添加時間戳等信息。