Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.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 Java中的wordpress posts JSON结果获取标记_Java_Android_Json_Wordpress - Fatal编程技术网

如何从android Java中的wordpress posts JSON结果获取标记

如何从android Java中的wordpress posts JSON结果获取标记,java,android,json,wordpress,Java,Android,Json,Wordpress,我正在尝试制作一个android应用程序,从我的wordpress博客中获取帖子,并在列表中显示信息。我能够获得标题、描述等结果,但无法从JSON结果中获得嵌套对象“标记”。那么,你能解释一下如何从JSON结果中获取标记名吗 我正在尝试使用以下代码: JSONObject root = new JSONObject(postJSON); JSONArray postsArray = root.getJSONArray("posts"); for (int i

我正在尝试制作一个android应用程序,从我的wordpress博客中获取帖子,并在列表中显示信息。我能够获得标题、描述等结果,但无法从JSON结果中获得嵌套对象“标记”。那么,你能解释一下如何从JSON结果中获取标记名吗

我正在尝试使用以下代码:

JSONObject root = new JSONObject(postJSON);
        JSONArray postsArray = root.getJSONArray("posts");


        for (int i = 0; i < postsArray.length(); i++) {
            // Get a single post at position i within the list of earthquakes
            JSONObject currentPost = postsArray.getJSONObject(i);

            String title = currentPost.getString("title");
            Log.e(LOG_TAG, "title is " + title);

            JSONObject tags = currentPost.getJSONArray("tags").getJSONObject(0);
            String tag = tags.getString("name");
            Log.e(LOG_TAG, "tag is " + tag);

            Post post = new Post(title,"123", tag);
            posts.add(post);
        }
JSONObject root=newjsonobject(postJSON);
JSONArray postsArray=root.getJSONArray(“posts”);
for(int i=0;i

但是logcat显示该值无法转换为JSONArray。

问题在于标记实际上是另一个JSON对象,而不是JSON数组。您需要执行以下操作:

JSONObject tags = currentPost.getJSONObject("tags").getJSONObject(0);
String tag = tags.getString("name");
Log.e(LOG_TAG, "tag is " + tag);
请记住,JSON数组总是由[]表示,对象由{}表示


希望这有帮助。

你是对的,但现在的问题是你不能使用int作为JSONObject的输入。啊,这个问题可能会对你有所帮助?