JAVA中json字符串如何转化为map对象,获取数据?

{"status":0,"message":"ok","total":9628,"results":[{"name":"外婆家(湖滨店)",...}]}从百度API检索的... { "status":0, "message":"ok", "total":9628, "results":[ { "name":"外婆家(湖滨店)",...}]}从百度API检索的信息,获取到数据,转化为String字符串,怎样把这个长字符串转变为Map对象?取其中的一部分信息 展开
 我来答
乐观又明快灬乖乖g
2018-03-30 · TA获得超过1.6万个赞
知道小有建树答主
回答量:153
采纳率:0%
帮助的人:18.5万
展开全部

我们需要先把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<String, Object> map = new HashMap<String, Object>();map.put("userId", 1001);map.put("userName", "张三");map.put("userSex", "男");JSONObject jsonObject = JSONObject.fromObject(map);System.out.println(jsonObject);

4.把List转换成JSON数据:List<UserInfo> list = new ArrayList<UserInfo>();UserInfo user = new UserInfo(1001, "张三");list.add(user);list.add(user);list.add(user);JSONArray jsonArray = JSONArray.fromObject(list);System.out.println(jsonArray);

5.

沫神钢虚1F
2017-01-18 · TA获得超过2.4万个赞
知道大有可为答主
回答量:1.6万
采纳率:59%
帮助的人:1122万
展开全部
hashmap是以键值对(key-value)的格式保存对象的容器, 数组是按顺序一个一个保存对象的容器 你把hashmap转换成数组是想把key转成数组呢还是把value转成数组呢或者key和value组合成的对象转换成数组呢.我把key和value的分别写出来,组合对象的同理...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
今晚不要想我
2017-07-14 · TA获得超过220个赞
知道小有建树答主
回答量:230
采纳率:50%
帮助的人:107万
展开全部
String ma="{ \"status\":0, \"message\":\"ok\", \"total\":9628, \"results\":[ { \"name\":\"外婆家(湖滨店)\"}]}";
Map<String,Object> map = JSON.parseObject(ma);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
宇海天
2015-03-19
知道答主
回答量:6
采纳率:0%
帮助的人:4.9万
展开全部
public Map jsonToObject(String jsonStr) throws Exception {
JSONObject jsonObj = new JSONObject(jsonStr);
Iterator<String> nameItr = jsonObj.keys();
String name;
Map<String, String> outMap = new HashMap<String, String>();
while (nameItr.hasNext()) {
name = nameItr.next();
outMap.put(name, jsonObj.getString(name));
}
return outMap;
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式