从JSON解析字符串数组

时间:2012-06-13 09:33:55

标签: java json

我有这个JSON对象:

{"error":null,
 "result":[{"id":"1234567890",
            "count":1,
            "recipients":
            ["u3848",
               "u8958",
               "u7477474"
            ],
            "dateCreated":"2012-06-13T09:13:45.989Z"
           }]
 }

我正在尝试找到一种方法将recipients数组正确解析为String[]对象。

有一种简单的方法吗?

修改

发现这个答案包含了结果所需的所有内容:Sending and Parsing JSON Objects

3 个答案:

答案 0 :(得分:8)

做我想做的事是这样的:

JSONArray temp = jsonObject.getJSONArray("name");
int length = temp.length();
if (length > 0) {
    String [] recipients = new String [length];
    for (int i = 0; i < length; i++) {
        recipients[i] = temp.getString(i);
    }
}

答案 1 :(得分:0)

您可以尝试将xstream与json序列化程序一起使用。看看this link

答案 2 :(得分:0)

我总是建议我最喜欢的库json-lib来处理JSON的东西。

您可以使用JSONArray转换为Object[],虽然它不是String[],但您仍然可以使用它,因为每个Object都有toString()方法。

String sYourJsonString = "['u3848', 'u8958', 'u7477474']";
Object[] arrayReceipients = JSONArray.toArray (JSONArray.fromObject(sYourJsonString));
System.out.println (arrayReceipients [0]); // u3848