热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

java解析xmldom_JavaDOM解析器解析XML文档

使用DOM的步骤以下是在使用DOM解析器解析文档使用的步骤。导入XML相关的软件包。创建DocumentBuilder从文件或流创建一个文档提取根元素检查属性检查子元素导入XML相

使用DOM的步骤

以下是在使用DOM解析器解析文档使用的步骤。

导入XML相关的软件包。

创建DocumentBuilder

从文件或流创建一个文档

提取根元素

检查属性

检查子元素

导入XML相关的软件包

importorg.w3c.dom.*;importjavax.xml.parsers.*;importjava.io.*;

创建 DocumentBuilder

DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();DocumentBuilderbuilder=factory.newDocumentBuilder();

从文件或流创建一个文档

StringBuilderxmlStringBuilder=newStringBuilder();xmlStringBuilder.append(" ");ByteArrayInputStreaminput=newByteArrayInputStream(xmlStringBuilder.toString().getBytes("UTF-8"));Documentdoc=builder.parse(input);

提取根元素

Elementroot=document.getDocumentElement();

检查属性

//returns specific attributegetAttribute("attributeName");//returns a Map (table) of names/valuesgetAttributes();

检查子元素

//returns a list of subelements of specified namegetElementsByTagName("subelementName");//returns a list of all child nodesgetChildNodes();

演示示例

这是输入需要解析的 xml 文件:

dinkar

kad

dinkar

85

Vaneet

Gupta

vinni

95

jasvir

singn

jazz

90

演示示例:

DomParserDemo.java

packagecom.yiibai.xml;importjava.io.File;importjavax.xml.parsers.DocumentBuilderFactory;importjavax.xml.parsers.DocumentBuilder;importorg.w3c.dom.Document;importorg.w3c.dom.NodeList;importorg.w3c.dom.Node;importorg.w3c.dom.Element;publicclassDomParserDemo{publicstaticvoidmain(String[]args){try{FileinputFile=newFile("input.txt");DocumentBuilderFactorydbFactory=DocumentBuilderFactory.newInstance();DocumentBuilderdBuilder=dbFactory.newDocumentBuilder();Documentdoc=dBuilder.parse(inputFile);doc.getDocumentElement().normalize();System.out.println("Root element :"+doc.getDocumentElement().getNodeName());NodeListnList=doc.getElementsByTagName("student");System.out.println("----------------------------");for(inttemp=0;temp

这将产生以下结果:

Root element :class

----------------------------

Current Element :student

Student roll no : 393

First Name : dinkar

Last Name : kad

Nick Name : dinkar

Marks : 85

Current Element :student

Student roll no : 493

First Name : Vaneet

Last Name : Gupta

Nick Name : vinni

Marks : 95

Current Element :student

Student roll no : 593

First Name : jasvir

Last Name : singn

Nick Name : jazz

Marks : 90

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。



推荐阅读
author-avatar
跟随自己的2502917817
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有