数码资源网·下载

展开

Java怎么对JSON字符串进行格式化输出

作者:网友整理
yabo银河app手机版(安卓语言学习) v1.2.0 安卓版

yabo银河app手机版(安卓语言学习) v1.2.0 安卓版 24.57M / 简体中文

点击下载
Java技术库app手机版(java教程) v1.1 安卓免费版

Java技术库app手机版(java教程) v1.1 安卓免费版 7.52M / 简体中文

点击下载
Json精灵-方圆中文汉化版v1.4

Json精灵-方圆中文汉化版v1.4 23.08M / 简体中文

点击下载

将JSON格式数据转化成XML格式或者XML格式的数据转化成JSON格式!vue json格式化电脑版中所有的关键字都会被着色,数据结构一目了然。很多用户都想要去了解Java怎么对JSON字符串进行格式化输出的哦,一起来仔细看看吧!

Java怎么对JSON字符串进行格式化输出截图

Java怎么对JSON字符串进行格式化输出

/**

* 格式化输入工具

* @author lizhgb

* @date 2015-10-14

* @Modified 2017-04-28

*/

public final class FormatUtil {

 /**

* 打印输入到控制

* @param jsonStr

* @author lizhgb

* @Date 2015-10-14 下午1:17:22

*/

 public static void printJson(String jsonStr) {

System.out.println(formatJson(jsonStr));

}

/**

* 格式化

* @param jsonStr

* @return

* @author lizhgb

* @Date 2015-10-14 下午1:17:35

* @Modified 2017-04-28 下午8:55:35

*/

Java怎么对JSON字符串进行格式化

public static String formatJson(String jsonStr) {

if (null == jsonStr || "".equals(jsonStr))

return "";

StringBuilder sb = new StringBuilder();

char last = '\0';

char current = '\0';

int indent = 0;

boolean isInQuotationMarks = false;

for (int i = 0; i < jsonStr.length(); i++) {

last = current;

current = jsonStr.charAt(i);

switch (current) {

case '"':

if (last != '\\'){

isInQuotationMarks = !isInQuotationMarks;

}

sb.append(current);

break;

case '{':

case '[':

sb.append(current);

if (!isInQuotationMarks) {

sb.append('\n');

indent++;

addIndentBlank(sb, indent);

}

break;

case '}':

case ']':

if (!isInQuotationMarks) {

sb.append('\n');

indent--;

addIndentBlank(sb, indent);

}

Java怎么对JSON字符串进行格式化输出 

             sb.append(current);

                break;

            case ',':

                sb.append(current);

                if (last != '\\' && !isInQuotationMarks) {

                    sb.append('\n');

                    addIndentBlank(sb, indent);

                }

                break;

            default:

                sb.append(current);

            }

        }


        return sb.toString();

    }


    /**

     * 添加space

     * 

     * @param sb

     * @param indent

     * @author lizhgb

     * @Date 2015-10-14 上午10:38:04

     */

    private static void addIndentBlank(StringBuilder sb, int indent) {

        for (int i = 0; i < indent; i++) {

            sb.append('\t');

        }

    }

}

JSON格式化

输出:


{

    "content":"this is the msg content.",

    "tousers":"user1|user2",

    "msgtype":"texturl",

    "appkey":"test",

    "domain":"test",

    "system":{

        "wechat":{

            "safe":"1"

        }

    },

    "texturl":{

        "urltype":"0",

        "user1":{

            "spStatus":"user01",

            "workid":"work01"

        },

        "user2":{

            "spStatus":"user02",

            "workid":"work02"

        }

    }

}

软件特别说明
son格式化工具下载大全等你来使用!

加载全部内容

相关文章
相关专题
json格式化工具下载大全
无论您是在找json格式化插件还是在找json格式化工具,都可以在本站的json格式化工具下载大全中...
进入专区