JSON对象按照ASCII对key值排序导包
1import java.util.ArrayList;
2import java.util.Collections;
3import java.util.LinkedHashMap;
4import java.util.List;
5import java.util.Map;
6
7import org.apachemons.lang.StringUtils;
8
9import net.sf.json.JSONObject;
⽅法代码
1 Map<String, Object> jsonMap=json;
2 //将key值单独封装成List
3 List<String> keys = new ArrayList<String>(jsonMap.keySet());
4 //排序
5 Collections.sort(keys);
6 //使⽤LinkedHashMap记录插⼊顺序
7 LinkedHashMap<String, Object> linkmap=new LinkedHashMap<String, Object>();
8 //按照key值顺序插⼊对应的value
9 for(int i=0;i<keys.size();i++){
10 if(StringUtils.(i))){
11 linkmap.(i), ((i)));
12 }
13 }
14 //将LinkedHashMap转换为JSONObject
15 JSONObject jObject=JSONObject.fromObject(linkmap);
16 //返回JSON字符串
17 String();
main调⽤
1 public static void main(String[] args) {
2 JSONObject jObject = new JSONObject();
3 jObject.put("phone", "12435");
4 jObject.put("Abc", "12435");
5 jObject.put("abc", "12435");
6 jObject.put("Esc", "12435");
7 jObject.put("esc", "12435");
8 String string = AsciiJSONString(jObject);json转换对象
9 System.out.println(string);
10 }
结果
{"Abc":"12435","Esc":"12435","abc":"12435","esc":"12435","phone":"12435"}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论