Java 處理json字符串value中多餘的雙引號

1、錯誤場景java

  json字符串的value值中有多餘的雙引號json

一、直接上錯誤的json字符串spa

String errorJsonStr =  "{\"userName\":\"瑞文\"綠色\",\"hero\":\"f放逐之刃\" 盤子\"}";

2、處理方案3d

一、第一種 :code

一、 將 {" 替換爲 {%         // % 也能夠是其餘字符,本身認識就好,可是要注意要處理的字符串中不包含你要換成的這個特殊字符
    將  ":"  替換爲 %:% 將 」, 替換爲 %二、 將多餘的 雙引號替換爲空字符串

二、第二種(推薦使用此方法):blog

本身寫個方法將value值中多餘的雙引號替換爲 中文雙引號,直接上代碼:字符串

public class MainTest { public static void main(String[] test) { String errorJsonStr =  "{\"userName\":\"瑞文\"綠色\",\"hero\":\"f放逐之刃\" 盤子\"}"; errorJsonStr = toJsonString(errorJsonStr); System.out.println(errorJsonStr); } // 處理json字符串中value多餘的雙引號, 將多餘的雙引號替換爲中文雙引號
    private static String toJsonString(String s) { char[] tempArr = s.toCharArray(); int tempLength = tempArr.length; for (int i = 0; i < tempLength; i++) { if (tempArr[i] == ':' && tempArr[i + 1] == '"') { for (int j = i + 2; j < tempLength; j++) { if (tempArr[j] == '"') { if (tempArr[j + 1] != ',' && tempArr[j + 1] != '}') { tempArr[j] = '」'; // 將value中的 雙引號替換爲中文雙引號
                        } else if (tempArr[j + 1] == ',' || tempArr[j + 1] == '}') { break; } } } } } return new String(tempArr); } }
相關文章
相關標籤/搜索