DOM解析XML文件
2011-12-08 17:05
405 查看
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
import android.sax.Element;
import myAndroid.parseData.*;
import myAndroid.parseData.*;
public class DomparseXML {
public ArrayList<Student> getStudents(InputStream inStream) throws ParserConfigurationException, SAXException, IOException
{
//用DOM解析XML文件
DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
DocumentBuilder builder=factory.newDocumentBuilder();
//解析XML文件并保存在Document中
Document doc=builder.parse(inStream);
//取得根节点
org.w3c.dom.Element root=doc.getDocumentElement();
//取得一个student节点树
NodeList personNodes=root.getElementsByTagName("student");
//初始化一个student对象
Student stu=new Student();
for(int i=0;i<personNodes.getLength();i++)
{
Node elem=personNodes.item(i);
stu.setId(Integer.parseInt(elem.getAttributes().toString()));
NodeList lists=elem.getChildNodes();
for(int j=0;j<lists.getLength();j++)
{
if(lists.item(j).getNodeType()==Node.ELEMENT_NODE)
{
Node chNode=lists.item(j);
if(chNode.getNodeName()=="name")
{
stu.setName(chNode.getNodeValue());
}
else if(chNode.getNodeName()=="sex")
{
//以此类推
}
}
}
}
}
}
import java.io.InputStream;
import java.util.ArrayList;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
import android.sax.Element;
import myAndroid.parseData.*;
import myAndroid.parseData.*;
public class DomparseXML {
public ArrayList<Student> getStudents(InputStream inStream) throws ParserConfigurationException, SAXException, IOException
{
//用DOM解析XML文件
DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
DocumentBuilder builder=factory.newDocumentBuilder();
//解析XML文件并保存在Document中
Document doc=builder.parse(inStream);
//取得根节点
org.w3c.dom.Element root=doc.getDocumentElement();
//取得一个student节点树
NodeList personNodes=root.getElementsByTagName("student");
//初始化一个student对象
Student stu=new Student();
for(int i=0;i<personNodes.getLength();i++)
{
Node elem=personNodes.item(i);
stu.setId(Integer.parseInt(elem.getAttributes().toString()));
NodeList lists=elem.getChildNodes();
for(int j=0;j<lists.getLength();j++)
{
if(lists.item(j).getNodeType()==Node.ELEMENT_NODE)
{
Node chNode=lists.item(j);
if(chNode.getNodeName()=="name")
{
stu.setName(chNode.getNodeValue());
}
else if(chNode.getNodeName()=="sex")
{
//以此类推
}
}
}
}
}
}
相关文章推荐
- xml文件解析—DOM方式
- Android学习笔记42:XML文件解析(DOM方式)
- 使用Dom解析xml文件
- 使用Dom解析xml文件
- Dom解析XML文件具体用法
- Dom解析XML文件具体用法
- Java眼中的XML--文件读取--1 应用DOM方式解析XML
- android中解析XML文件方式—DOM SAX PULL
- dom对xml 文件的解析
- java中DOM解析xml文档却找不到文件
- dom、dom 4j解析xml文件
- 三种方式解析XML(DOM,Pull,Sax,并带文件编码识别).........................by 私念
- 菜鸟学DOM解析XML文件
- Android中DOM解析XML文件
- xml文件解析-DOM
- DOM解析XML文件
- 使用DOM解析XML文件
- Java使用DOM解析XML的文件属性名和属性值、节点名和节点值
- DOM解析XMl文件
- DOM方式解析XML配置文件,将数据保存成数组