pull解析

HttpURLConnection请求网络数据

private InputStream httpUtil(String uri) {

try {
URL url=new URL(uri);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
in=conn.getInputStream();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

return in;
}

//pull解析

private List<Book> pull(InputStream s) {
pull=Xml.newPullParser();
try {
pull.setInput(s,"utf-8");
eve=pull.getEventType();
while(flag){
switch (eve) {
case XmlPullParser.START_DOCUMENT:
list=new ArrayList<Book>();
break;

case XmlPullParser.START_TAG:
st=pull.getName();
if(st.equals("item")){
b = new Book();
}
break;

case XmlPullParser.TEXT:
if(st.equals("id")){
b.setId(pull.getText());
}else if(st.equals("catalog")){
b.setName(pull.getText());
}
break;
case XmlPullParser.END_TAG:
st=pull.getName();
if(st.equals("item")){
list.add(b);
}
st="";
break;
case XmlPullParser.END_DOCUMENT:
flag=false;
break;

}

eve=pull.next();
}
} catch (XmlPullParserException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return list;

}

原文地址:https://www.cnblogs.com/hnpy/p/5455161.html