android_document解析
来源:互联网 发布:最新网民数据 编辑:程序博客网 时间:2024/05/16 08:54
1.用到之前android_sax,HttpUtils工具类
2.User.java
package com.dom.xml;public class User {private int id;private String name;private int age;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "User [id=" + id + ", name=" + name + ", age=" + age + "]";}public User() {// TODO Auto-generated constructor stub}}
3.DomParseService.java
package com.dom.xml;import java.io.InputStream;import java.util.ArrayList;import java.util.List;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import org.w3c.dom.Document;import org.w3c.dom.Element;import org.w3c.dom.Node;import org.w3c.dom.NodeList;public class DomParseService {public DomParseService() {// TODO Auto-generated constructor stub}public List<User> getUsers(InputStream inputStream) throws Exception{List<User> list=new ArrayList<User>();DocumentBuilderFactory documentBuilderFactory=DocumentBuilderFactory.newInstance();DocumentBuilder documentBuilder=documentBuilderFactory.newDocumentBuilder();Document document=documentBuilder.parse(inputStream);Element element=document.getDocumentElement();//获得元素节点NodeList userNodes=element.getElementsByTagName("user");//从user这个节点开始遍历//循环该节点下的所有子节点for(int i=0; i<userNodes.getLength();i++){Element userElement=(Element) userNodes.item(i);//取出该节的的元素User user=new User();user.setId(Integer.parseInt(userElement.getAttribute("id")));NodeList childNodes=userElement.getChildNodes();//取子节点for(int j=0; j<childNodes.getLength();j++){if(childNodes.item(j).getNodeType()==Node.ELEMENT_NODE){if("name".equals(childNodes.item(j).getNodeName())){user.setName(childNodes.item(j).getFirstChild().getNodeValue());}else if("age".equals(childNodes.item(j).getNodeName())){user.setAge(Integer.parseInt(childNodes.item(j).getFirstChild().getNodeValue()));}}}list.add(user);}return list;}/** * @param args * @throws Exception */public static void main(String[] args) throws Exception {String path="http://192.168.2.104:8080/mp3/users.xml";InputStream inputStream=HttpUtils.getXML(path);DomParseService dom=new DomParseService();List<User> users=dom.getUsers(inputStream);for(User user:users){System.out.println(user.toString());}}}
0 0
- android_document解析
- 解析
- 解析
- 解析
- 解析
- 解析
- 解析
- 解析
- 解析
- 解析
- 解析[ ]
- 解析
- ffmpeg解析-----解析文件格式
- Xen解析 netfilter解析
- JSON解析,XML解析
- 硬解析 软解析
- 解析xml dom 解析
- JSON解析、XML解析
- 第五周项目1
- 关于位图中【调色板】、DDB、DIB的概念
- RedHat Linux常见命令
- 生活是一首歌
- 其实我了 饿死算了
- android_document解析
- 每首歌的结尾方式是不同的
- 黑马程序员-线程池
- vim的配置文件
- srtp
- quick-cocos2dx display
- 取代 Ant:使用 Maven 管理 Wowza 插件开发
- linux下的getch模拟(无回显读取字符)
- Google Gmail十年回首