C語言是一種非常常見的編程語言,在開發中常常需要將數據轉換成JSON格式。JSON是現在很多互聯網應用程序中常用的數據交換格式。下面介紹一下如何在C語言中將數據拼接成JSON字符串。
#include <stdio.h> #include <stdlib.h> #include <string.h> void json_str(char *json, const char *key, const char *value) { if (strlen(json) == 0) { sprintf(json, "{\"%s\":\"%s\"}", key, value); return; } char *last = json + strlen(json) - 1; if (*last == '}') { *(last + 1) = ','; *(last + 2) = '\0'; sprintf(last + 3, "\"%s\":\"%s\"}", key, value); return; } sprintf(last + 1, ",\"%s\":\"%s\"}", key, value); } int main(int argc, char **argv) { char json[1024] = ""; json_str(json, "name", "Lucy"); json_str(json, "age", "20"); json_str(json, "gender", "female"); printf("%s\n", json); return 0; }
上述代碼中,我們定義了一個json_str函數,它有三個參數:一個是json字符串,另外兩個是需要拼接的key和value。在函數內部,首先判斷json字符串的長度是否為0,如果是,則直接添加key和value;否則,需要在json字符串的最后一個字符判斷是否是“}”,如果是,則添加一個逗號,然后再拼接key和value;如果不是,則直接在json字符串的最后添加key和value。
在main函數中,我們聲明了一個json字符串,并依次添加了三個key-value對,然后通過printf函數打印生成的json字符串。
使用C語言將數據拼接成JSON字符串,代碼量較大,但是卻是比較實用的一種做法。大家只需按照上面介紹的方法,將數據一一拼接起來,即可獲得一個完整的JSON字符串。
上一篇vue京東公共頭部