如何从此json对象中提取字符串数组?

时间:2012-02-21 06:52:46

标签: android json

我正在尝试使用org.json中的类

从以下json对象获取可用数字列表
    {
        "response":true,
        "state":1,
        "data":
        {
            "CALLERID":"81101099",
            "numbers":
                [
                       "21344111","21772917",
                       "28511113","29274472",
                       "29843999","29845591",
                       "30870001","30870089",
                       "30870090","30870091"
                ]
        }
    }

我的第一步是在从Web服务接收到json对象之后:

jsonObj = new JSONObject(response);
jsonData = jsonObj.optJSONObject("data");

现在,如何保存数字的字符串数组?

4 个答案:

答案 0 :(得分:35)

使用:

jsonObj = new JSONObject(response);
jsonData = jsonObj.optJSONObject("data");
JSONArray arrJson = jsonData.getJSONArray("numbers");
String[] arr = new String[arrJson.length()];
for(int i = 0; i < arrJson.length(); i++)
    arr[i] = arrJson.getString(i);

答案 1 :(得分:1)

您需要使用JSONArray来提取数组中的数据

JSONObject jObj= new JSONObject(your_json_response);
JSONArray array = jObj.getJSONArray("data");

答案 2 :(得分:0)

假设你试图在javascript块中获取它,请尝试这样的事情

var arrNumber = jsonData.numbers;

答案 3 :(得分:0)

我的代码是获取“数据”:

function getUserId( $user_id )
{        
die('ends');
}
add_action( 'user_register', 'getUserId');