1. 程式人生 > >json資料格式化

json資料格式化

/**
 * 得到格式化json資料  退格用\t 換行用\r
 */
public  String format(String jsonStr) {
    int level = 0;
    StringBuffer jsonForMatStr = new StringBuffer();
    for(int i=0;i<jsonStr.length();i++){
        char c = jsonStr.charAt(i);
        if(level>0&&'\n'==jsonForMatStr.charAt(jsonForMatStr.length()-1)){
            jsonForMatStr
.append(getLevelStr(level)); } switch (c) { case '{': case '[': jsonForMatStr.append(c+"\n"); level++; break; case ',': jsonForMatStr.append(c+"\n"); break; case
'}': case ']': jsonForMatStr.append("\n"); level--; jsonForMatStr.append(getLevelStr(level)); jsonForMatStr.append(c); break; default: jsonForMatStr.append(c); break
; } } return jsonForMatStr.toString(); } private String getLevelStr(int level){ StringBuffer levelStr = new StringBuffer(); for(int levelI = 0;levelI<level ; levelI++){ levelStr.append("\t"); } return levelStr.toString();

}

使用防範 :

format(str);