Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/188.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
Android Json解析器问题是将所有参与者的值放入arraylist_Android_Json - Fatal编程技术网

Android Json解析器问题是将所有参与者的值放入arraylist

Android Json解析器问题是将所有参与者的值放入arraylist,android,json,Android,Json,使用json jason解析器,但我没有向arraylist中添加多个标记值,我希望使用Actor将$t标记解析到arraylist中 { "media$group":{ "media$credit":[ { "$t":"Murison Dunn", "role":"Writer", "scheme":"urn:ebu" }, { "$t":"Randolph Scott", "role":"Actor", "scheme":"urn:ebu" }, { "$t":"Forrest Tucker

使用json jason解析器,但我没有向arraylist中添加多个标记值,我希望使用Actor将$t标记解析到arraylist中

{
"media$group":{
"media$credit":[
{
"$t":"Murison Dunn",
"role":"Writer",
"scheme":"urn:ebu"
},
{
"$t":"Randolph Scott",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"Forrest Tucker",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"name":"Mala Powers",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"J. Carrol Naish",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"Edgar Buchanan",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"name":"Myron Healey",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"Howard Petrie",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"name":"Ray Teal",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"William Forrest",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"Denver Pyle",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"Trevor Bardette",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"Kenneth Tobey",
"role":"Actor",
"scheme":"urn:ebu"
}
]
},

{
"media$group":{
"media$credit":[
{
"$t":"Murison",
"role":"Writer",
"scheme":"urn:ebu"
},
{
"$t":"Scott",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"Tucker",
"role":"Actor",
"scheme":"urn:ebu"
}
{
"name":"Powers",
"role":"Actor",
"scheme":"urn:ebu"
}
]
},

{
"media$group":{
"media$credit":[
{
"$t":"Dunn",
"role":"Writer",
"scheme":"urn:ebu"
},
{
"$t":"J.Naish",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"Buchanan",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"Healey",
"role":"Actor",
"scheme":"urn:ebu"
},
{
"$t":"Petrie",
"role":"Actor",
"scheme":"urn:ebu"
}
]
}
}
然而,我的主要问题是,我需要将$t标记中的多个项目放入arraylist。我的代码是:

JSONObject jsonmediagrop=videoObject.getJSONObject("media$group");
 JSONArray itemsmediarole = jsonmediagrop.getJSONArray("media$credit");
            for(int l=0;l<itemsmediarole.length();l++){
                JSONObject Objectrole = itemsmediarole.getJSONObject(l);

                strrole=Objectrole.getString("Role");
                Log.v("Role", strrole);

                if(strrole.equals("Actor"))
                { 

                     stractor=Objectrole.getString("$t") + "," + stractor;
                     Log.v("stractor", stractor);
                     maprole.put("$t", stractor);
                     myrolelist.add(maprole);
                }

            }
JSONObject-jsonmediagrop=videoObject.getJSONObject(“媒体$group”);
JSONArray itemsmediarole=jsonmediagrop.getJSONArray(“媒体$credit”);

对于(int l=0;l您的JSON无效。当我向下滚动您的JSON列表时,您定义了同名数组。这就是为什么它使用多个键“role”值的原因。

好的,在阅读了您在另一个答案中的注释后,我决定帮助您。
解析我的也有很多问题。我做了很多研究
在我的代码中,我试图获取
rstp url链接

我希望你能看看它并解决你的问题。
这是我的工作代码

    try {
        JSONObject obj = new JSONObject(json);
        String entry = obj.getString("entry");
        JSONObject enObj = new JSONObject(entry);
        String group = enObj.getString("media$group");
        JSONObject grObj = new JSONObject(group);
        String content = grObj.getString("media$content");
        JSONArray array = grObj.getJSONArray("media$content");
        for(int j=0; j<array.length(); j++){
            JSONObject thumbs = array.getJSONObject(j);
            String url = thumbs.getString("url");
            urls[j] = url;
            Log.d(TAG, url);
            //data.setThumbUrl(thumbUrl);
        }


        Log.v(TAG, content);
    } catch (Exception e) {
        Log.e(TAG, e.toString());
    }
试试看{
JSONObject obj=新的JSONObject(json);
String entry=obj.getString(“entry”);
JSONObject enObj=新的JSONObject(条目);
String group=enObj.getString(“媒体$group”);
JSONObject grObj=新的JSONObject(组);
String content=grObj.getString(“媒体$content”);
JSONArray数组=grObj.getJSONArray(“媒体$content”);

对于(int j=0;jj您当前面临的问题是什么?当我将json数组中的所有参与者添加到arraylist中时,json数组无效,但发现这些值,例如第一个数组具有所有12个参与者名称,第二个数组具有12+3=15个参与者,第三个数组具有15+4=19。但我希望进入arraylist中,第一个数组具有12,第二个数组具有3个,第三个数组仅具有4个参与者名称。这是我的sue bro.请检查您在Kenneth Tobey、Trevor Bardette、丹佛派尔、William Forrest、Ray Teal、Howard Petrie、Myron Healey、Edgar Buchanan、J.Carrol Naish、Mala Powers、Forrest Tucker、Randolph Scott中的json数组。这是第一个标记数据,第二个是-Kenne Duncan、Adriene Dore、Charles Starrett、Kenneth Tobey、Trevor Bardettet、丹佛派尔、William Forrest、 Ray Teal,Howard Petrie,Myron Healey,Edgar Buchanan,J.Carrol Naish,Mala Powers,Forrest Tucker,Randolph Scott…这里前三个数据是第二个数组,但这也是将数组第一个数据添加到第二个数组中。这是youtube api Webservice,我想告诉所有来自媒体$group tagYour JSON的演员姓名。懒惰忍者已经为您发布了代码。我t将根据您的JSON完美工作。+1为他。bro我希望所有$t值都输入到相关演员角色标记的arraylist中首先,获取角色标记的值,如果是字符串,则输入“$t”的值但是我声明了上面的代码,但是我的逻辑中有一些错误,将第一个数组数据添加到第二个数组中,将第二个数组数据添加到第三个数组中…如何解决它BoolAnx for response bro。但是我希望所有参与者的名称都来自$t标记
   try {
        JSONObject obj = new JSONObject(json);
        String entry = obj.getString("entry");
        JSONObject enObj = new JSONObject(entry);
        String group = enObj.getString("media$group");
        JSONObject grObj = new JSONObject(group);
        JSONArray array = grObj.getJSONArray("media$credit");
        for(int j=0; j<array.length(); j++){
            JSONObject credits = array.getJSONObject(j);
            String role = credits.getString("role");
            Log.d(TAG, role);
        }

    } catch (Exception e) {
        Log.e(TAG, e.toString());
    }