zoukankan      html  css  js  c++  java
  • 格式化--json字符串 java源代码

    public static String formatJson(String json) {
    StringBuffer result = new StringBuffer();
    int length=json.length();
    int number=0;
    char key=0;
    //遍历输入字符串
    for(int i=0;i<length;i++) {
    //获取当前字符
    key=json.charAt(i);
    //如果当前字符是前方括号、前花括号做如下处理
    if((key=='[')||(key=='{')) {
    if((i-1>0)&&(json.charAt(i-1)==':')) {
    result.append(' ');
    result.append(indent(number));
    }
    //打印当前的字符
    result.append(key);
    result.append(' ');
    number++;
    result.append(indent(number));
    continue;
    }
    if((key==']'||(key=='}'))) {
    result.append(' ');
    number--;
    result.append(indent(number));
    result.append(key);
    if(((i+1)<length)&&(json.charAt(i+1)!=',')) {
    result.append(' ');
    }
    continue;
    }
    if((key==',')) {
    result.append(key);
    result.append(' ');
    result.append(indent(number));
    continue;
    }
    result.append(key);
    }
    return result.toString();
    }

    private static String SPACE=" ";
    private static String indent(int number) {
    StringBuffer result=new StringBuffer();
    for(int i=0;i<number;i++) {
    result.append(SPACE);
    }
    return result.toString();
    }

  • 相关阅读:
    添加搜索引擎
    理解隐马尔可夫模型(转载)
    全排列合集
    COM使用简介
    KMP算法
    遗传算法(转载)
    退火算法(转载)
    非电信手机获取闪讯密码的一种实现方法
    几个时间控制函数(转载)
    图像处理的Alpha通道
  • 原文地址:https://www.cnblogs.com/chengxuyuanIng/p/12671752.html
Copyright © 2011-2022 走看看