`
java从入门到放弃
  • 浏览: 44714 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java是怎么读xml文件-dom解析篇

阅读更多

我早tm就想做一个java操作xml的学习篇了,一直都没有时间(其实是借口),我想来想去,为了要让大家少走弯路,决定做一个系列篇,希望大家支持,多多评论!提出你的宝贵意见····

  

dom解析篇,首先上代码!!(大家最喜欢了)

public static void main(String[] args) {
			readXmlDom();
	}
	
	static void readXmlDom() {
		try{
		DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance(); //获取工厂
		DocumentBuilder db=dbf.newDocumentBuilder();                  //获取builder
		Document doc=db.parse("D:\\fileDemo\\user.xml");            //获取docment
		Element root=doc.getDocumentElement();    
		System.out.println(root.getNodeName());
		NodeList list=root.getChildNodes();
		System.out.println(list.getLength());
	     for (int i = 0; i < list.getLength(); i++) {
             Node child = list.item(i);
              System.out.println(child.getNodeName());
	     }
	     }catch (Exception e) {
		}
	}

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<people><name type="englise">linbulu</name><sex>boy</sex></people>

 

好了,dom解析是最简单的,是不是最常用我是不知道了,他是jdk自带的api,我们不需要另外下载jar包,我们先看看他的用法吧:

1、获取documentBuilder的工厂对象实例(newInstance) 
2、用工厂对象生产出一个DocumentBuilder
3、获取document

 我们可以看到,对于dom解析来说,Document就是他的核心,咱们首要任务就是获取Document.

其次,他比较重要的类我们上面都有:

1、Element,经常要用的,比如刚才我们用到的 Element root=doc.getDocumentElement();就是获取到了

people这个dom节点。

2、Node,是最重要的一个知识点,大家要记一下下面常用的用法。node这个跟element很像,Node root=doc.getFirstChild();可以跟上面的那句替换。我们看看这个

 2.1 node.getChildNodes(),上面有,获取元素的所有子元素

 2.2 node.getTextContent(),上面代码有,获取元素的内容

 2.3 node.getAttributes(),我们看上面的那个xml,里边有个type="english",我们怎么去获取呢?

 

static void readXmlDom() {
		try{
		DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance(); //获取工厂
		DocumentBuilder db=dbf.newDocumentBuilder();                  //获取builder
		Document doc=db.parse("D:\\fileDemo\\user.xml");            //获取docment
		Node root =doc.getFirstChild();                               //根节点
		NodeList list=root.getChildNodes();                
	     for (int i = 0; i < list.getLength(); i++) {
             Node child = list.item(i);
             if(child.getNodeName().equals("name")){
            	  NamedNodeMap map= child.getAttributes();
            	  Node typeNode= map.getNamedItem("type");
            	  System.out.println(typeNode.getTextContent());
             }
	     }
	     }catch (Exception e) {
	    	 e.printStackTrace();
		}
	}

  

  

3、Nodelist相当于是List<Node>,不过他要这么遍历:nodelist.item(int i);

 

 

 

 

分享到:
评论

相关推荐

    Java操作XML文件-dom4j .doc

    Java中的DOM4J库是一个非常流行的处理XML文档的工具,它提供了一套简单易用的API,使得在Java中操作XML文件变得相当便捷。本文主要介绍如何使用DOM4J进行XML文件的操作,包括XML字符串与Document对象之间的转换,...

    Android解析xml(2)---DOM解析

    - DOM解析适用于小型XML文件,因为它将整个文件加载到内存,大文件可能导致内存溢出。 - 解析完成后记得释放资源,避免内存泄漏。 - 遍历DOM树时,应避免不必要的递归,以优化性能。 - 如果需要高效地处理大型...

    java_dom解析xml xml java

    标题“java_dom解析xml xml java”表明了本文档的主题是关于如何使用Java中的DOM技术来解析XML文件。 #### 描述分析 描述中提到这是一个适合新手入门的内容,并给出了一个简单的XML示例。该XML文档包含了一个`...

    dom-sax解析XML文件-java

    在Java编程语言中,处理XML(可扩展标记语言)文件是一项常见的任务,XML作为一种结构化数据格式,广泛用于数据交换和存储。XML文件的解析主要分为两种方式:DOM(Document Object Model)和SAX(Simple API for XML...

    DOM_XML.rar_DOM_dom xml_dom xml java_dom解析xml_java解析xml

    标题中的"DOM_XML.rar"可能是一个包含DOM解析XML相关示例的压缩文件,"DOM_dom xml_dom xml java_dom解析xml_java解析xml"这部分描述了文件的主要内容,即关于DOM(Document Object Model)在XML解析中的应用,特别...

    XML-DOM-Java

    1. **DOM解析器**: Java提供了DOM解析器,如SAX(Simple API for XML)和DOM4J,但内置的`javax.xml.parsers.DocumentBuilderFactory`和`org.w3c.dom.Document`类用于构建和操作DOM树。 2. **创建DOM解析器**: 首先...

    java平台中使用DOM解析xml文件

    在Java平台上,DOM解析器提供了对XML文档的全面和结构化的访问。 使用DOM解析XML的基本步骤如下: 1. **导入必要的库**:在Java中,DOM解析功能主要由`javax.xml.parsers`和`org.w3c.dom`包提供。因此,首先需要在...

    Java解析XML文件的DOM和SAX方式.doc

    Java 解析 XML 文件的 DOM 和 SAX 方式是指在 Java 中使用 Document Object Model(DOM)和 Simple API for XML(SAX)两种方式来解析 XML 文件的技术。下面将详细介绍这两种方式的原理、实现和优缺点。 DOM 方式 ...

    Java解析xml配置文件,DOM4J解析xml配置文件,提供使用文档和源码下载

    Java解析XML配置文件是开发过程中常见的一项任务,特别是在基于Java的框架中,如Spring,大量使用XML文件来存储配置信息。DOM4J是Java中一个非常流行且功能强大的XML处理库,它提供了丰富的API用于读取、写入、修改...

    java dom 解析 xml 实例

    Java DOM 解析 XML 实例是 Java 语言中常用的 XML 解析方法之一,使用 W3C 推荐的文档对象模型(Document Object Model,DOM)来解析 XML 文档。DOM 提供了一个树形结构的对象模型,通过遍历树形结构可以访问和操作 ...

    JAVA DOM解析XML文件过程详解

    JAVA DOM 解析 XML 文件过程详解 JAVA DOM 解析 XML 文件过程详解是指使用 JAVA 语言通过 DOM(Document Object Model)解析 XML 文件的过程。DOM 是一种应用程序接口(API),它将 XML 文档转换为一个树形结构,...

    读取XML文件的四种方法

    读取XML文件是指从XML文件中提取数据的过程,常用于数据交换、配置文件读取、报表生成等场景中。在Java中,读取XML文件有多种方法,本文将介绍四种常见的方法:DOM、DOM4J、JDOM和SAX。 DOM(Document Object Model...

    XML.rar_XML SAX_XML java_dom xml_java xml_java解析xml

    本篇文章将重点讲解XML在Java中的解析方式,特别是DOM和SAX解析。 1. DOM解析: DOM(Document Object Model)是W3C推荐的一种处理XML文档的标准模型。它将整个XML文档加载到内存中,构建一个树形结构,允许开发者...

    android Dom解析xml文件

    Android中的DOM解析XML文件是一种强大的工具,尤其适用于小型XML文件的处理。然而,对于大型XML文件,考虑到性能和内存消耗,可能需要考虑使用SAX或StAX等更高效的解析方式。在实际项目中,根据具体需求和资源限制...

    Java解析XML工具类--(java源码)

    * 解析某个xml文件,并在内存中创建DOM树 * @param xmlFile 要解析的XML文件 * @return 解析某个配置文件后的Document * @throws Exception xml文件不存在 */ public static Document parse( String xml...

    使用dom4j 和本地dom 解析xml 文件

    在Java中,解析XML文件是常见的任务,通常有DOM(Document Object Model)和DOM4J两种方式。下面我们将详细探讨这两种解析方法。 DOM解析方式是将整个XML文件加载到内存中,形成一棵DOM树,每个节点代表XML文档的一...

    xml-dom4j解析工具类

    总的来说,XML-DOM4J解析工具类是Java开发中处理XML数据的一种实用手段,它简化了对复杂XML文档的操纵,使得开发者可以更加专注于业务逻辑,而不是底层的解析细节。通过学习和使用这样的工具类,我们可以提高代码的...

    XML ----DOM操作

    1. **加载XML文档**:首先,我们需要创建一个DOM解析器,如Java中的`DocumentBuilderFactory`和`DocumentBuilder`,它们用于读取XML文件并构建DOM树。 2. **获取根节点**:解析后的XML文档会被转换为一个`Document`...

    XML四种解析方式------DOM SAX JDOM DOM4J

    DOM解析器将整个XML文档加载到内存中,形成一个树形结构,称为DOM树。每个XML元素、属性、文本等都被表示为树中的节点。这种解析方式的优点是可以方便地通过节点关系进行遍历和修改,但缺点是占用内存大,尤其对于...

Global site tag (gtag.js) - Google Analytics