在C語言的JSON處理中,經常需要去除JSON中的轉義字符,使其成為可讀的字符串。下面我們介紹一種簡單的方法來實現這個功能。
#include <stdio.h> #include <string.h> char* removeEscapes(char* str){ int i, len = strlen(str); char* buff = (char *)malloc(len + 1); int j = 0; for(i=0; i<len; i++){ if(str[i] == '\\'){ i++; switch(str[i]){ case 't': buff[j++] = '\t'; break; case 'r': buff[j++] = '\r'; break; case 'n': buff[j++] = '\n'; break; case '"': buff[j++] = '"'; break; case '\\': buff[j++] = '\\'; break; default: buff[j++] = '\\'; buff[j++] = str[i]; break; } } else{ buff[j++] = str[i]; } } buff[j] = '\0'; return buff; } int main(){ char* str = "\{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}"; printf("%s\n", str); char* newStr = removeEscapes(str); printf("%s\n", newStr); free(newStr); return 0; }
本代碼中的
測試代碼中的
有了這個函數,我們可以輕松地從優秀的JSON庫讀取字符串,然后使用我們的函數來提供人類可讀的輸出。
下一篇vue動態聲明屬性