Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从JSON解析字符串数组_Java_Json - Fatal编程技术网

Java 从JSON解析字符串数组

Java 从JSON解析字符串数组,java,json,Java,Json,我有一个JSON对象: {"error":null, "result":[{"id":"1234567890", "count":1, "recipients": ["u3848", "u8958", "u7477474" ], "dateCreated":"2012-06-13T09:13:45.989Z"

我有一个JSON对象:

{"error":null,
 "result":[{"id":"1234567890",
            "count":1,
            "recipients":
            ["u3848",
               "u8958",
               "u7477474"
            ],
            "dateCreated":"2012-06-13T09:13:45.989Z"
           }]
 }
我正试图找到一种方法,将
recipients
数组正确解析为
String[]
对象

有没有一个简单的方法可以做到这一点

编辑:


找到了这个答案,它包含了结果所需的所有内容:

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

我总是建议我最喜欢的库来处理JSON内容

您可以使用转换为
对象[]
,尽管它不是
字符串[]
,但仍然可以使用它,因为每个
对象都有
toString()
方法

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

我想要的方法是:

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);
    }
}
JSONArray temp=jsonObject.getJSONArray(“名称”);
int length=temp.length();
如果(长度>0){
字符串[]收件人=新字符串[长度];
for(int i=0;i
您使用的是哪个Json(Java)库?我使用的是
org.Json.JSONObject
library该“name”属性可能来自哪里?您的原始帖子中没有该属性。由于JSON是键/值存储,因此需要预定义
name
属性。对。(我想知道,因为你回答了自己的问题,钥匙不在那里。)因此应该是“收件人”而不是“姓名”。