您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關android中怎么利用jsonReader解析json,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
對于這個json:
{ "id" : "3232", "data" : [{ "data1" : "555", "data2" : "3243" }, { "data1" : "888", "data2" : "777" }] }
我們可以這樣來解析:
import java.io.IOException; import java.io.InputStream; import java.io.Reader; import java.io.StringReader; import com.google.gson.stream.JsonReader; import android.app.Activity; import android.content.Context; import android.os.Bundle; public class TestActivity1 extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); parseAssertData(); } public void parseAssertData() { InputStream is = null; try { is = this.getAssets().open("ss.json", Context.MODE_PRIVATE); int length = is.available(); byte[] buffer = new byte[length]; is.read(buffer); String temp = new String(buffer); Reader response = new StringReader(temp.toString()); parseResponse(response); } catch (IOException ex) { ex.printStackTrace(); } } private void parseResponse(Reader response) throws IOException { JsonReader reader = new JsonReader(response); reader.beginObject(); while (reader.hasNext()) { String name = reader.nextName(); if ("id".equals(name)) { String id = reader.nextString(); System.out.println("===id="+id); } else if (name.equals("data")) { reader.beginArray(); while (reader.hasNext()) { reader.beginObject(); String name1; while (reader.hasNext()) { name1 = reader.nextName(); if (name1.equals("data1")) { String s1 = reader.nextString(); System.out.println("===s1="+s1); } else if (name1.equals("data2")) { String s2 = reader.nextString(); System.out.println("===s2="+s2); } else { reader.skipValue(); } } reader.endObject(); } reader.endArray(); } else { reader.skipValue(); } } reader.endObject(); reader.close(); } }
關于android中怎么利用jsonReader解析json就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。