Json字符串和JsonObject、JsonArray转换
json字符串和jsonObject
解析jsonObject嵌套和json字符串 代码片
.
// json字符串
data={"334407776627601408":{"materialsGuid":"334407776627601408","materialsName":"手套","materialsNum":"0","materialsTime":"0"},
"335383233539878912":{"materialsGuid":"335383233539878912","materialsName":"手套2","materialsNum":"0","materialsTime":"0"}}
// 解析
JSONObject jsonObject = JSON.parseObject(data);
List<WorkOrderDetail> wods = new ArrayList<WorkOrderDetail>();
for(Map.Entry<String, Object> entry : jsonObject.entrySet()){
if(StringUtil.isNotNull(entry.getValue())){
WorkOrderDetail wod = new WorkOrderDetail();
JSONObject jsonObject1 = JSON.parseObject(entry.getValue().toString());
wod.setMaterialsKindGuid(jsonObject1.getString("materialsGuid"));
wod.setMaterialsKindName(jsonObject1.getString("materialsName"));
wod.setMaterialsKindAmount(jsonObject1.getInteger("materialsNum"));
wod.setUsetime(jsonObject1.getInteger("materialsTime"));//借用物资的天数
wods.add(wod);
}
}
json字符串和jsonArray
解析jsonObject嵌套和json字符串 代码片
.
// json字符串
data=[{"materialsGuid":"333674510069018624","materialsName":"安全帽","materialsNum":1,"materialsTime":1},
{"materialsGuid":"333674510069018624","materialsName":"安全帽","materialsNum":1,"materialsTime":1}]
// 解析
JSONArray jsonArray = JSON.parseArray(data);
for(int i=0;i<jsonArray.size();i++){
JSONObject jsonObject = billDetails.getJSONObject(i);
String materialsGuid = jsonObject.getString("materialsGuid ");
}
总结
【 】代表jsonArray , { }代表jsonObject。