java - 仅使用字符串和值解析 JSON 对象

我在尝试使用最小值解析以在 Android 中进行映射时遇到问题。

有一些带有更多信息的示例 JSON 格式:

[{id:"1", name:"sql"},{id:"2",name:"android"},{id:"3",name:"mvc"}]

这个最常用且易于使用的示例只需使用 getString("id")getValue("name")

但是我如何使用这种 JSON 格式解析以映射,仅使用字符串和值最小格式映射到使用循环的 java 映射集合。而且因为字符串 json 总是会彼此不同。例如:

{"1":"sql", "2":"android", "3":"mvc"}

谢谢

最佳答案

您需要获取所有键的列表,遍历它们并将它们添加到您的 map 中,如下例所示:

    String s = "{menu:{\"1\":\"sql\", \"2\":\"android\", \"3\":\"mvc\"}}";
    JSONObject jObject  = new JSONObject(s);
    JSONObject  menu = jObject.getJSONObject("menu");

    Map<String,String> map = new HashMap<String,String>();
    Iterator iter = menu.keys();
    while(iter.hasNext()){
        String key = (String)iter.next();
        String value = menu.getString(key);
        map.put(key,value);
    }

https://stackoverflow.com/questions/4407532/

相关文章:

ruby-on-rails - rails : Render Json Status Problem

java - 在java中查询一个JSONObject

java - 如何使用 Jackson json 注释枚举字段以进行反序列化

json - 服务器响应在中途被切断

c# - Web API 复杂参数属性全部为空

json - 如何使用 Elasticsearch 搜索嵌套对象

json - 可以引用 JSON 数字吗?

javascript - 脚本5009 : 'JSON' is undefined

javascript - 在 Node.js 下存储 JSON 的简单方法

javascript - D3 - 如何处理 JSON 数据结构?