无意中遇到 给json串重新赋值时,将json转换为jsonobject时返回结果顺序乱了
话不多说直接上代码
public String updateJosnStr(String jsonStr) throws JSONException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//转为LinkedHashMap<String, Object> 此步骤必须
LinkedHashMap<String, Object> json = JSON.parseObject(jsonStr,LinkedHashMap.class,Feature.OrderedField);
Long actBeginTime =Long.valueOf(String.valueOf(json.get("actBeginTime"))).longValue();
Long actEndTime =Long.valueOf(String.valueOf(json.get("actEndTime"))).longValue();
Date beginTime = new Date(actBeginTime);
Date endTime = new Date(actEndTime);
String actBeginTimeStr = simpleDateFormat.format(beginTime);
String actEndTimeStr = simpleDateFormat.format(endTime);
json.put("actBeginTime", actBeginTimeStr);
json.put("actEndTime", actEndTimeStr);
return json.toString();
}
json串直接转换为jsonobject会发生乱序,需要转化为LinkedHashMap<String, Object>承接一下