java解析json对象,数组

一、 JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。
Json建构于两种结构:
1、“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 如: 
{
“name”:”jackson”,
“age”:100
}

2、值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)如:
{
“students”:
[
{“name”:”jackson”,“age”:100},
{“name”:”michael”,”age”:51}
]

}


二、解析

1,解析对象

    private static Map<String, String> jsonStringToList(String rsContent) throws Exception {
//        rsContent = "{\n" +
//                "        \"bss\": \"browser_set\",\n" +
//                "        \"operation\": \"sel\",\n" +
//                "        \"jid\": \"18602912226\",\n" +
//                "        \"browser_ID\": \"361.exe\",\n" +
//                "        \"browser_pic\": \"item.logo.IE\",\n" +
//                "        \"browser_name\": \"360浏览器\",\n" +
//                "        \"browser_path\": \"123\",\n" +
//                "        \"browser_remark\": \"使用自定义浏览器打开\"\n" +
//                "    }\n";

        JSONObject arry = JSONObject.fromObject(rsContent);
        System.out.println("json字符串内容如下");
        System.out.println(arry);
        Map<String, String> map = new HashMap<String, String>();
        for (Iterator<?> iter = arry.keys(); iter.hasNext(); ) {
            String key = (String) iter.next();
            String value = arry.get(key).toString();
            map.put(key, value);
        }
        return map;
    }

2,解析数组

 private static List<Map<String, String>> jsonStringToList(String rsContent) throws Exception
    {

        rsContent = "{\n" +
                "        \"bss\": \"browser_set\",\n" +
                "        \"operation\": \"sel\",\n" +
                "        \"jid\": \"18602912226\",\n" +
                "        \"browser_ID\": \"361.exe\",\n" +
                "        \"browser_pic\": \"item.logo.IE\",\n" +
                "        \"browser_name\": \"360浏览器\",\n" +
                "        \"browser_path\": \"123\",\n" +
                "        \"browser_remark\": \"使用自定义浏览器打开\"\n" +
                "    }\n";

        JSONObject arry = JSONArray.fromObject(rsContent);

        System.out.println("json字符串内容如下");
        System.out.println(arry);
        List<Map<String, String>> rsList = new ArrayList<Map<String, String>>();
        for (int i = 0; i < arry.size(); i++)
        {
            JSONObject jsonObject = arry.getJSONObject(i);
            Map<String, String> map = new HashMap<String, String>();
            for (Iterator<?> iter = jsonObject.keys(); iter.hasNext();)
            {
                String key = (String) iter.next();
                String value = jsonObject.get(key).toString();
                map.put(key, value);
            }
            rsList.add(map);
        }
        return rsList;
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值