我们需要先把json字符串转化为net.sf.json.JSONObject对象,java中这样就可以完成json字符串到Map的转换了。
1.将数组转换为JSON:String[] arr = {"asd","dfgd","asd","234"};JSONArray jsonarray = JSONArray.fromObject(arr);System.out.println(jsonarray);
2.对象转换成JSON:UserInfo user = new UserInfo(1001,"张三");JSONArray jsonArray = JSONArray.fromObject(user);System.out.println( jsonArray );
3.把Map转换成json, 要使用jsonObject对象:Map
4.把List转换成JSON数据:List
5.
hashmap是以键值对(key-value)的格式保存对象的容器, 数组是按顺序一个一个保存对象的容器 你把hashmap转换成数组是想把key转成数组呢还是把value转成数组呢或者key和value组合成的对象转换成数组呢.我把key和value的分别写出来,组合对象的同理...
String ma="{ \"status\":0, \"message\":\"ok\", \"total\":9628, \"results\":[ { \"name\":\"外婆家(湖滨店)\"}]}";
Map
public Map jsonToObject(String jsonStr) throws Exception {
JSONObject jsonObj = new JSONObject(jsonStr);
Iterator
String name;
Map
while (nameItr.hasNext()) {
name = nameItr.next();
outMap.put(name, jsonObj.getString(name));
}
return outMap;
}