这篇文章将为大家详细讲解有关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就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。