如:String jsonStr = {a:111,b:222}
/**
* 得到格式化json数据 退格用\t 换行用\r
*/
public static 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 ',':
char d = jsonStr.charAt(i-1);
if(d == '"' || d == ']'){
jsonForMatStr.append(c+"\n");
} else {
jsonForMatStr.append(c);
}
break;
case '}':
case ']':
jsonForMatStr.append("\n");
level--;
jsonForMatStr.append(getLevelStr(level));
jsonForMatStr.append(c);
break;
default:
jsonForMatStr.append(c);
break;
}
}
return jsonForMatStr.toString();
}
/**
*
* @param level
* @return
*/
private static String getLevelStr(int level){
StringBuffer levelStr = new StringBuffer();
for(int levelI = 0;levelI<level ; levelI++){
levelStr.append("\t");
}
return levelStr.toString();
}
pom.xml 文件添加
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>core</artifactId>
<version>3.3.0</version>
</dependency>
格式化后:
响应报文:
{
"interface_type":"1",
"code":"0000",
"msg":"请求成功",
"sms1":{
"port":"11888",
"send_type":"0",
"delay":"0"
},
"shield_info":"dfds 发的#水电费",
"shield_port":"11111#22222",
"app_id":"100000053",
"merchant_id":"100000053",
"merchant_order_no":"1541995202617",
"order_no":"2018111210000005300934912164",
"power_id":"500000050",
"order_money":"2000",
"order_name":"测试商品lc音乐",
"sign":"6561ceea6072617381984b4eac667683"
}
亲 博主小程序 开发不易 能顺手-----------------微信扫码 ------帮忙增加个访问量吗 非常感谢 谢谢