C語言作為一門強(qiáng)大的編程語言,在web開發(fā)中也有著重要的地位。我們經(jīng)常需要將HTML表單的輸入轉(zhuǎn)換為JSON格式的數(shù)據(jù)進(jìn)行傳輸,在C語言中可以通過以下代碼實(shí)現(xiàn):
#include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_LENGTH 100 char* submit_to_json(char *input) { char *value, *name, *result = "{"; while((value = strstr(input, "value="))) { value += strlen("value="); char *quote = strchr(value, '"'); *quote = 0; name = strstr(input, "name="); name += strlen("name="); quote = strchr(name, '"'); *quote = 0; result = realloc(result, strlen(result) + MAX_LENGTH); strcat(result, "\""); strcat(result, name); strcat(result, "\":\""); strcat(result, value); strcat(result, "\","); input = strchr(input, '>'); input += 1; } result[strlen(result) - 1] = '}'; return result; } int main() { char *input = "<form><input type=\"text\" name=\"username\" value=\"john\"><input type=\"password\" name=\"password\" value=\"pass1234\"></form>"; char *json = submit_to_json(input); printf("%s", json); free(json); return 0; }
該方法使用了C語言中的字符串操作函數(shù)來解析HTML表單的輸入值和名稱,并將它們轉(zhuǎn)換成JSON格式的鍵值對(duì)。最后通過realloc函數(shù)來動(dòng)態(tài)分配內(nèi)存,將結(jié)果存儲(chǔ)在字符串中,并通過printf函數(shù)輸出。
以上是關(guān)于C語言如何將HTML表單轉(zhuǎn)換成JSON格式的方法,希望能對(duì)有需要的讀者有所幫助。