package com.bwie.test;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.List;
import org.xmlpull.v1.XmlPullParser;
import android.content.res.XmlResourceParser;
import android.util.Log;
import android.util.Xml;
//请求
public class Httputil {
private static String path="http://www.sciencenet.cn/xml/iphoneInterface.aspx?type=news&nums=20&pass=";
private static InputStream is;
private static List<dat> list;
public static InputStream readfiels(){
try {
URL url=new URL(path);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
//设置请求方式
connection.setRequestMethod("GET");
//直连
connection.connect();
int code = connection.getResponseCode();
if(code==200){
//输入流
return connection.getInputStream();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
public static List<dat> parse() throws Exception {
//获得读取的输入流
is = Httputil.readfiels();
//创建pull对象
XmlPullParser p = Xml.newPullParser();
//为pull设置解析 的输入流
p.setInput(is,"utf-8");
//新建对象
dat b=null;
//得到xml标签的type类型
int type = p.getEventType();
while(type!=XmlResourceParser.END_DOCUMENT){
//得到标签的名字
String name = p.getName();
switch (type) {
case XmlResourceParser.START_DOCUMENT:
list = new ArrayList<dat>();
break;
case XmlResourceParser.START_TAG:
//开始标签为item时 创建对象
if("item".equalsIgnoreCase(name)){
b=new dat();
}else if("title".equalsIgnoreCase(name)){
b.title=p.nextText();
}else if("link".equalsIgnoreCase(name)){
b.link=p.nextText();
}else if("imgs".equalsIgnoreCase(name)){
b.imgs=p.nextText();
}else if("copyright".equalsIgnoreCase(name)){
b.copyright=p.nextText();
}
else if("pubDate".equalsIgnoreCase(name)){
b.pubDate=p.nextText();
}
break;
case XmlResourceParser.END_TAG:
//结束标签
if("item".equalsIgnoreCase(name)){
list.add(b);
}
break;
}
//遍历下一个type
type=p.next();
}
Log.e("lsit",list.toString());
return list;
}
}
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.List;
import org.xmlpull.v1.XmlPullParser;
import android.content.res.XmlResourceParser;
import android.util.Log;
import android.util.Xml;
//请求
public class Httputil {
private static String path="http://www.sciencenet.cn/xml/iphoneInterface.aspx?type=news&nums=20&pass=";
private static InputStream is;
private static List<dat> list;
public static InputStream readfiels(){
try {
URL url=new URL(path);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
//设置请求方式
connection.setRequestMethod("GET");
//直连
connection.connect();
int code = connection.getResponseCode();
if(code==200){
//输入流
return connection.getInputStream();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
public static List<dat> parse() throws Exception {
//获得读取的输入流
is = Httputil.readfiels();
//创建pull对象
XmlPullParser p = Xml.newPullParser();
//为pull设置解析 的输入流
p.setInput(is,"utf-8");
//新建对象
dat b=null;
//得到xml标签的type类型
int type = p.getEventType();
while(type!=XmlResourceParser.END_DOCUMENT){
//得到标签的名字
String name = p.getName();
switch (type) {
case XmlResourceParser.START_DOCUMENT:
list = new ArrayList<dat>();
break;
case XmlResourceParser.START_TAG:
//开始标签为item时 创建对象
if("item".equalsIgnoreCase(name)){
b=new dat();
}else if("title".equalsIgnoreCase(name)){
b.title=p.nextText();
}else if("link".equalsIgnoreCase(name)){
b.link=p.nextText();
}else if("imgs".equalsIgnoreCase(name)){
b.imgs=p.nextText();
}else if("copyright".equalsIgnoreCase(name)){
b.copyright=p.nextText();
}
else if("pubDate".equalsIgnoreCase(name)){
b.pubDate=p.nextText();
}
break;
case XmlResourceParser.END_TAG:
//结束标签
if("item".equalsIgnoreCase(name)){
list.add(b);
}
break;
}
//遍历下一个type
type=p.next();
}
Log.e("lsit",list.toString());
return list;
}
}