c語言是一種非常常用的編程語言,而json是一種輕量級的數據交互格式。那么如何使用c語言將數據庫數據寫入json呢?以下是一個簡單的例子。
#include#include #include #include #include int main() { //連接數據庫 MYSQL mysql; mysql_init(&mysql); mysql_real_connect(&mysql,"127.0.0.1","root","password","database",0,NULL,0); //查詢數據并組裝成json格式 MYSQL_RES *result; MYSQL_ROW row; char query[1000]; sprintf(query,"SELECT * FROM table"); mysql_query(&mysql,query); result = mysql_store_result(&mysql); json_object *jarray,*jobj; jarray = json_array(); while((row = mysql_fetch_row(result)) != NULL) { jobj = json_object_new_object(); json_object_object_add(jobj,"id",json_object_new_int(atoi(row[0]))); json_object_object_add(jobj,"name",json_object_new_string(row[1])); json_object_object_add(jobj,"age",json_object_new_int(atoi(row[2]))); json_object_array_add(jarray,jobj); } json_object *jdata = json_object_new_object(); json_object_object_add(jdata,"data",jarray); //將json寫入文件 FILE *fp; fp = fopen("data.json","w"); fprintf(fp,"%s",json_object_to_json_string(jdata)); fclose(fp); //釋放資源 mysql_free_result(result); mysql_close(&mysql); json_object_put(jarray); json_object_put(jdata); return 0; }
上述代碼中,我們使用了mysql的C API,通過連接數據庫并查詢數據得到一個mysql結果集。然后我們新建一個json數組,遍歷結果集中的每一行數據,將數據組裝成json對象,并將對象添加到json數組中。最后,我們新建一個json對象,將數組添加到對象中,并將整個對象寫入文件。最后記得釋放mysql和json資源。
使用c語言寫入數據庫數據到json中并不復雜,只需要了解mysql和json的操作即可。這樣我們就可以方便地將數據庫數據以json格式進行傳輸。