欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

gson去除json注釋

劉柏宏1年前9瀏覽0評論

在使用Gson解析JSON時,經常會出現JSON中包含注釋的情況。然而,Gson本身并不支持直接去除JSON中的注釋。但我們可以使用以下代碼自行實現:

public static String removeComments(String jsonString) {
StringBuilder sb = new StringBuilder(jsonString);
boolean isInQuote = false;
char lastChar = '0';
for (int i = 0; i< sb.length(); i++) {
char c = sb.charAt(i);
if (c == '"' && lastChar != '\\') {
isInQuote = !isInQuote;
}
if (!isInQuote) {
if (c == '/' && lastChar == '/') {
sb.deleteCharAt(i - 1);
sb.deleteCharAt(i - 1);
i -= 2;
} else if (c == '*' && lastChar == '/') {
sb.deleteCharAt(i - 1);
sb.deleteCharAt(i - 1);
i -= 2;
while (sb.charAt(i) != '*' || sb.charAt(i + 1) != '/') {
sb.deleteCharAt(i);
}
sb.deleteCharAt(i);
sb.deleteCharAt(i);
i -= 2;
}
}
lastChar = c;
}
return sb.toString();
}

以上代碼通過遍歷JSON字符串的每一個字符,使用標志位記錄是否處于引號中,再根據當前字符和相鄰字符的關系,判斷是否為注釋內容并刪除。

可以看到,雖然Gson本身并不支持去除JSON注釋,但通過以上代碼實現,我們可以輕松地實現去除JSON注釋的需求。