pull解析
2016-05-30 20:20
267 查看
package com.example.pull_jiexi;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import com.example.bean.Person;
import android.os.Bundle;
import android.app.Activity;
import android.util.Xml;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
public class MainActivity extends Activity {
private ListView lv;
private List<Person> list;
private List<Person> pull_list;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv = (ListView) findViewById(R.id.lv);
pull_list = pull();
BaseAdapter adapter=new BaseAdapter() {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view=View.inflate(MainActivity.this, R.layout.item, null);
TextView tv_name = (TextView) view.findViewById(R.id.tv_name);
TextView tv_age = (TextView) view.findViewById(R.id.tv_age);
tv_name.setText(pull_list.get(position).getName());
tv_age.setText(pull_list.get(position).getAge()+"");
return view;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return pull_list.size();
}
};
lv.setAdapter(adapter);
}
private List<Person> pull(){
list = new ArrayList<Person>();
//得到一个pull解析对象
XmlPullParser parser=Xml.newPullParser();
try {
parser.setInput(getAssets().open("person.xml"), "utf-8");
int type = parser.getEventType();
String name="";
String age="";
while(type!=XmlPullParser.END_DOCUMENT){
String nodeName=parser.getName();
switch (type) {
case XmlPullParser.START_TAG:
if("name".equals(nodeName)){
name=parser.nextText();
}else if("age".equals(nodeName)){
age=parser.nextText();
}
break;
case XmlPullParser.END_TAG:
if("person".equals(nodeName)){
list.add(new Person(name,Integer.parseInt(age)));
}
break;
}
type=parser.next();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;
}
}
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import com.example.bean.Person;
import android.os.Bundle;
import android.app.Activity;
import android.util.Xml;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
public class MainActivity extends Activity {
private ListView lv;
private List<Person> list;
private List<Person> pull_list;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv = (ListView) findViewById(R.id.lv);
pull_list = pull();
BaseAdapter adapter=new BaseAdapter() {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view=View.inflate(MainActivity.this, R.layout.item, null);
TextView tv_name = (TextView) view.findViewById(R.id.tv_name);
TextView tv_age = (TextView) view.findViewById(R.id.tv_age);
tv_name.setText(pull_list.get(position).getName());
tv_age.setText(pull_list.get(position).getAge()+"");
return view;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return pull_list.size();
}
};
lv.setAdapter(adapter);
}
private List<Person> pull(){
list = new ArrayList<Person>();
//得到一个pull解析对象
XmlPullParser parser=Xml.newPullParser();
try {
parser.setInput(getAssets().open("person.xml"), "utf-8");
int type = parser.getEventType();
String name="";
String age="";
while(type!=XmlPullParser.END_DOCUMENT){
String nodeName=parser.getName();
switch (type) {
case XmlPullParser.START_TAG:
if("name".equals(nodeName)){
name=parser.nextText();
}else if("age".equals(nodeName)){
age=parser.nextText();
}
break;
case XmlPullParser.END_TAG:
if("person".equals(nodeName)){
list.add(new Person(name,Integer.parseInt(age)));
}
break;
}
type=parser.next();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;
}
}
相关文章推荐
- hdu3437 划分树 区间内小于第K大的值得和
- MYSQL的创建数据表及测试数据类型
- Easy-题目33:102. Binary Tree Level Order Traversal
- 《JavaScript学习笔记八》:数字时钟的实现
- 在Ubuntu系统下装Win7并引导双系统
- Java 并发工具包 java.util.concurrent 用户指南
- libubus 数据结构介绍
- Easy-题目32:172. Factorial Trailing Zeroes
- 轻量级图形报表工具JSCharts (JSChart),内置函数中文参考
- swift学习之路(六)字符串和字符的常用操作
- BP学习算法的实现
- Storm 编程入门
- 《JavaScript学习笔记七》:数组和可变参数arguments的介绍
- 把商品添加到购物车的动画效果(贝塞尔曲线)
- 线程
- 二叉树的遍历(递归)
- Service的应用思路
- Codeforces Round #352 div1 C D (智商+线段树)
- ZooKeeper在Linxu下集群配置
- 多线程-GCD