JSON格式化(仅简单处理格式,未校验)

function jsonFormat() {

var text = $("#json1").val().split("\n").join(" ");

var t = [];

var tab = 0;

var rept=[];

var c='';

for (var i = 0, len = text.length; i < len; i++) {

c= text.charAt(i);

if (c === ' ' || c === '\t' || c === '\r' || c === '\n') {

continue;

}

switch(c){

case ':':

c=": ";

break;

case ',':

rept.length=tab<<2;

c = ",\n"+rept.join(' ');

break;

case '[':

case '{':

tab++;

rept.length=tab<<2;

c += "\n"+rept.join(' ');

break;

case ']':

case '}':

tab--;

rept.length=tab<<2;

c = "\n"+rept.join(' ')+c;

break;

}

t.push(c);

}

$("#json2").html(t.join('').replace(/\n/g,"<br/>").replace(/ /g,"&nbsp;"));

}

 

 

public static String jsonFormat(String jsonStr) {

    int len = jsonStr.length();

    StringBuffer msg = new StringBuffer();

    int tab = 0;

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

        char c = jsonStr.charAt(i);

        if (c == ' ' || c == '\t' || c == '\r' || c == '\n') {

        continue;

    }

    switch (c) {

        case ':':

            msg.append(c).append(" ");

            break;

        case ',':

            msg.append(c).append("\n").append(StringUtils.repeat(' ', tab << 2));

            break;

        case '[':

        case '{':

            tab++;

            msg.append(c).append("\n").append(StringUtils.repeat(' ', tab << 2));

            break;

        case ']':

        case '}':

            tab--;

            msg.append("\n").append(StringUtils.repeat(' ', tab << 2)).append(c);

                break;

            default:

                msg.append(c);

        }

    }

    return msg.toString();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值