Xml使用pull解析
来源:互联网 发布:backtrack4 linux iso 编辑:程序博客网 时间:2024/05/16 07:15
该 XML 文件并未包含任何关联的样式信息。文档树显示如下。
<DATA>
<item>
<title>复旦大学教授、著名翻译家陆谷孙逝世</title>
<link>http://news.sciencenet.cn/htmlnews/2016/7/352456.shtm?id=352456</link>
<imgs>http://news.sciencenet.cn</imgs>
<description>中青在线上海7月28日电(中国青年报•中青在线记者 周凯 张茜)今天下午1时39分,英汉大词典主编、著名翻译家、复旦大学外语学院教授陆谷孙先生在上海新华医院去世,享年76岁。陆谷孙,194...</description>
<copyright>周凯 张茜</copyright>
<pubDate>2016-07-28 14:53</pubDate>
<comments>http://news.sciencenet.cn/html/comment.aspx?id=352456</comments>
</item>
public class MainActivity extends AppCompatActivity {
private ListView lv;
private TextView tv;
private res re=null;
private List<res> reslist;
private String urll="http://www.sciencenet.cn/xml/iphoneInterface.aspx?type=news&nums=20&pass=";
private Myadapter myadapter;
public void handleMessage(Message msg) {
myadapter=new Myadapter(reslist,MainActivity.this);
lv.setAdapter(myadapter);
myadapter.notifyDataSetChanged();
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=(ListView) findViewById(R.id.lv);
tv=(TextView) findViewById(R.id.tv);
getid(urll);
}
private void getid(final String urll) {
new Thread(){
@Override
public void run() {
try {
URL url=new URL(urll);
HttpURLConnection connection= (HttpURLConnection) url.openConnection();
connection.setReadTimeout(5000);
connection.setConnectTimeout(5000);
connection.setRequestMethod("GET");
int code=connection.getResponseCode();
if(code==200){
InputStream is=connection.getInputStream();
//得到数据开始解析
tojson(is);
handler.sendEmptyMessage(0);
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}.start();
}
XmlPullParserFactory factory =XmlPullParserFactory.newInstance();
XmlPullParser parser = factory.newPullParser();
parser.setInput(str,"utf-8");
//类型判断
int eventType = parser.getEventType();
while(eventType!=XmlPullParser.END_DOCUMENT){
String name = parser.getName();
switch (eventType){
case XmlPullParser.START_DOCUMENT:
reslist=new ArrayList<res>();
break;
private TextView tv;
private res re=null;
private List<res> reslist;
private String urll="http://www.sciencenet.cn/xml/iphoneInterface.aspx?type=news&nums=20&pass=";
private Myadapter myadapter;
Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
myadapter=new Myadapter(reslist,MainActivity.this);
lv.setAdapter(myadapter);
myadapter.notifyDataSetChanged();
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=(ListView) findViewById(R.id.lv);
tv=(TextView) findViewById(R.id.tv);
getid(urll);
}
private void getid(final String urll) {
new Thread(){
@Override
public void run() {
try {
URL url=new URL(urll);
HttpURLConnection connection= (HttpURLConnection) url.openConnection();
connection.setReadTimeout(5000);
connection.setConnectTimeout(5000);
connection.setRequestMethod("GET");
int code=connection.getResponseCode();
if(code==200){
InputStream is=connection.getInputStream();
//得到数据开始解析
tojson(is);
handler.sendEmptyMessage(0);
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}.start();
}
private void tojson(InputStream str){
try {
XmlPullParserFactory factory =XmlPullParserFactory.newInstance();
XmlPullParser parser = factory.newPullParser();
parser.setInput(str,"utf-8");
//类型判断
int eventType = parser.getEventType();
while(eventType!=XmlPullParser.END_DOCUMENT){
String name = parser.getName();
switch (eventType){
case XmlPullParser.START_DOCUMENT:
reslist=new ArrayList<res>();
break;
case XmlPullParser.START_TAG:
//re.setCDATA(Integer.parseInt(parser.getAttributeValue(0)));
if("title".equals(name)){
re=new res();
re.setCDATA(parser.nextText());
}else if("link".equals(name)){
re.setLink(parser.nextText());
}else if("copyright".equals(name)){
re.setCopyright(parser.nextText());
}else if("pubDate".equals(name)){
re.setPubDate(parser.nextText());
}
break;
case XmlPullParser.END_TAG:
if(name.equals("item")) {
reslist.add(re);
}
break;
}
eventType=parser.next();
}
} catch (XmlPullParserException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
if("title".equals(name)){
re=new res();
re.setCDATA(parser.nextText());
}else if("link".equals(name)){
re.setLink(parser.nextText());
}else if("copyright".equals(name)){
re.setCopyright(parser.nextText());
}else if("pubDate".equals(name)){
re.setPubDate(parser.nextText());
}
break;
case XmlPullParser.END_TAG:
if(name.equals("item")) {
reslist.add(re);
}
break;
}
eventType=parser.next();
}
} catch (XmlPullParserException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
0 1
- 使用pull解析Xml
- 使用pull解析xml
- 使用Pull解析Xml
- 使用pull解析xml
- Xml使用pull解析
- 使用Pull解析XML
- xml解析(使用pull解析)
- XML解析三 使用PULL解析XML
- 使用PULL解析XML文件
- 使用PULL解析XML文件
- 使用PULL方式解析XML
- android使用pull解析xml
- android使用pull解析xml
- xml 使用PULL解析器
- Android使用pull解析xml
- 使用pull方式解析XML
- android xml使用pull解析
- 使用pull解析xml文件
- std::cout输出unsigned char 型数据
- c++计算器
- 二叉树的遍历
- 棋盘问题(经典DFS)
- 二元多项式
- Xml使用pull解析
- 无穷递归
- HDU 5773 The All-purpose Zero(DP)
- barplot条形图的图例位置设置
- phonegap笔记 -返回上一页并刷新代码整理
- WindowManager类使用详解——用户首次打开APP的使用教学蒙板效果实现
- ubuntuQQ怎末安装
- D3.js 之面包圈图
- 2016 Multi-University Training Contest 4 欢乐战记