dom解析xml
来源:互联网 发布:wifi跑字典软件 编辑:程序博客网 时间:2024/06/07 07:39
dom是一种用于XML文档对象模型,可用于直接访问xml文档的各个部分,在DOM中文档模拟为树状,其中xml语法的每一个组成部分都表示一个节点,DOM允许用户遍历文档树,从父节点移动到子节点;操作简单,方便
由于dom是直接将整个xml文件导入进来,所有对内存资源也是一个不小的冲击,所有,DOM只适合那小小型的文档解析,在对大型文档解析的时候要格外注意
以Person的xml文件为例读取:
<persons> <person id="1"> <name>jackZhous</name> <age>10</age> </person> <person id="2"> <name>Taylor</name> <age>20</age> </person></persons>
java代码读取:
public void DomXML(String uri) throws Exception{ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); //获取dom工厂类 DocumentBuilder builder = factory.newDocumentBuilder(); //获取dom解析器 Document document = builder.parse(uri); //使用dom技术将文档转换为 一个document树状对象 Element element = document.getDocumentElement(); //获取文档标签 NodeList personList = element.getElementsByTagName("person"); //以person标签分割为list //读取每个具体的person内容 并把它加入list for(int i = 0; i < personList.getLength() ; i++){ Element person = (Element) personList.item(i); Person p = new Person(); p.setId(Integer.parseInt(person.getAttribute("id"))); NodeList childList = person.getChildNodes(); for(int j = 0; j < childList.getLength() ; j++){ if(childList.item(j).getNodeType() == Node.ELEMENT_NODE){ if("name".equals(childList.item(j).getFirstChild().getNodeName())){ p.setName(childList.item(j).getFirstChild().getNodeValue()); }else if("age".equals(childList.item(j).getFirstChild().getNodeName())){ p.setAge(Integer.parseInt(childList.item(j).getFirstChild().getNodeValue())); } list.add(p); } } } }
0 0
- XML DOM---解析xml dom
- 【XML】DOM解析XML
- 解析xml dom 解析
- xml解析 Dom解析
- dom解析xml
- dom解析 xml
- dom解析xml
- 解析xml之--DOM
- Dom解析XML文档
- DOM解析XML文件
- dom解析xml
- dom解析xml
- xml文件解析-DOM
- JAVA解析XML DOM
- DOM解析XML
- JAVA解析XML DOM
- XML DOM解析
- JAVA解析XML DOM
- for表达式可以省略
- TortoiseSVN修改服务器地址的方法
- C++运算重载符
- Ubuntu终端中字体颜色含义
- 轻松解决svn服务器ip改变后,eclipse如何改变?
- dom解析xml
- sql关系数据库表的创建
- xUtils系列之DbUtils-保存自定义类型
- linux命令行中光标(非vim光标)移动技巧------提升开发效率
- 文章标题
- Hello CSDN!
- Mysql 升级到 5.6 后插入语句时间字段报错:Incorrect datetime value: '' for column 'createtime'
- POJ 2466 Chessboard(二分图+前向星)
- UICollectionViewLayout