本文介绍的是使用dom4j方式读取,如需要其他方式可自行百度。

1、首先导入dom4j的jar包:http://www.dom4j.org/dom4j-1.6.1/

2、准备xml文件

<?xml version="1.0" encoding="UTF-8"?>
<class>
<student>
<people name="xiaoming" age="16">xiaoming</people>
<people name="zhangsan" age="17">zhangsan</people>
<people name="lisi" age="18">lisi</people>
<people name="wangwu" age="19">wangwu</people>
</student>
<teacher>
<people name="qiao" sex="男">qiao</people>
</teacher>
</class>

3、读取xml的代码为

package com.xml;

import java.io.File;
import java.util.Iterator;
import java.util.List; import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader; /**
* @author QiaoJiafei
* @version 创建时间:2016年2月3日 上午11:27:00
* 类说明
*/
public class TestXML { public static void main(String[] args) {
// TODO Auto-generated method stub
readxml();
} private static void readxml() {
// TODO Auto-generated method stub
SAXReader read = new SAXReader();
File file = new File("D:/workspace/TestDemo/src/com/xml/NewFile.xml");
try {
Document document = read.read(file); Element root = document.getRootElement();
System.out.println("------>一级元素name:"+root.getName()); List<Element> liste = root.elements();
System.out.println("------>二级元素大小:"+liste.size()); for(Iterator<Element> iterator=root.elementIterator();iterator.hasNext();) {
Element e1 = iterator.next();
System.out.println("------>二级元素name:"+e1.getName());
for(Iterator<Element> iterator2=e1.elementIterator();iterator2.hasNext();) {
Element e2 = iterator2.next();
System.out.println("------>三级元素name:"+e2.getName()); List<Element> lista = e2.attributes();
System.out.println("------>三级元素值的大小:"+lista.size());
System.out.println("------>三级元素值的大小另一种方式:"+e2.attributeCount()); System.out.println("------>三级元素中name:"+e2.attributeValue("name"));
System.out.println("------>三级元素中第二个值:"+e2.attribute(1).getName()); for(Iterator<Attribute> iterator3=e2.attributeIterator();iterator3.hasNext();) {
Attribute attribute = iterator3.next();
System.out.println("------>三级元素的name和value:"+attribute.getName()+" ,"+attribute.getValue());
}
}
}
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} }

输出结果:

------>一级元素name:class
------>二级元素大小:2
------>二级元素name:student
------>三级元素name:people
------>三级元素值的大小:2
------>三级元素值的大小另一种方式:2
------>三级元素中name:xiaoming
------>三级元素中第二个值:age
------>三级元素的name和value:name ,xiaoming
------>三级元素的name和value:age ,16
------>三级元素name:people
------>三级元素值的大小:2
------>三级元素值的大小另一种方式:2
------>三级元素中name:zhangsan
------>三级元素中第二个值:age
------>三级元素的name和value:name ,zhangsan
------>三级元素的name和value:age ,17
------>三级元素name:people
------>三级元素值的大小:2
------>三级元素值的大小另一种方式:2
------>三级元素中name:lisi
------>三级元素中第二个值:age
------>三级元素的name和value:name ,lisi
------>三级元素的name和value:age ,18
------>三级元素name:people
------>三级元素值的大小:2
------>三级元素值的大小另一种方式:2
------>三级元素中name:wangwu
------>三级元素中第二个值:age
------>三级元素的name和value:name ,wangwu
------>三级元素的name和value:age ,19
------>二级元素name:teacher
------>三级元素name:people
------>三级元素值的大小:2
------>三级元素值的大小另一种方式:2
------>三级元素中name:qiao
------>三级元素中第二个值:sex
------>三级元素的name和value:name ,qiao
------>三级元素的name和value:sex ,男

参考API:

http://dom4j.sourceforge.net/dom4j-1.6.1/apidocs/

java如果读取xml内容的更多相关文章

  1. 通过w3c方式 读取xml内容

    /** * 通过w3c方式 读取xml内容 * @param lablenames 要读取的节点名称 * @param file_path_name 文件绝对路径 * @return */ publi ...

  2. Java 实例 - 读取文件内容

    原文作者:菜鸟教程 原文链接:Java 实例 - 读取文件内容(建议前往原文以获得最佳体验) 按行读取文本文件 import java.io.*; public class Main { public ...

  3. java DOM4J 读取XML

    最近学习Java,在处理XML文档的时候,查阅相关资料,发现了DOM4J这个jre库,相对C#的XML处理来说,功能还算是跟得上 下面展示一篇我自己写的一个XML读取测试 import java.ut ...

  4. java实现读取文件内容(不同类型)

    在一些项目中大量的数据经常需要从文件中读取,例如xml文件,txt文件,csv文件 1.读取本地的xml文件,需要注意对应的路径 //读取xml文件,xmlFile为读取文件的路径 DocumentB ...

  5. java Domj4读取xml文件加强训练案例

    需求:给出一段xml文件.要求按照鸳鸯输出. xml文件代码如下: <?xml version="1.0" encoding="utf-8"?> & ...

  6. java Domj4读取xml文件

    先概括,再以代码形式给出. 获取节点: Iterator  Element.nodeIterator();  //获取当前标签节点下的所有子节点 获取 标签: Element Document.get ...

  7. 深入浅出Java Dom4j读取XML

    在以前自己使用的xml较少,只是了解其很强大,现在可算是在DRP中,真正的开始使用它了,以前只是简单的理解xml,xml即可扩展标记语言,简单的使用,具体是什么?怎么用?还是一直让自己期待的. 首先来 ...

  8. java poi 读取excel内容

    import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Row; import or ...

  9. Java反射——读取XML文件,创建对象

    读取XML文件,创建对象 config.xml <?xml version="1.0" encoding="UTF-8"?> <beans&g ...

随机推荐

  1. HTML5 Viewport Meta Tag

    https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/U ...

  2. git 给远程库 添加多个url地址

     目录[-] 前提 使用流程 原理解析 注意 Other 参考文章 作者:shede333主页:http://my.oschina.net/shede333 && http://blo ...

  3. struts2中valueStack,stackContext以及actionContext的关系

    一,首先给出三者的定义 1.valueStack: 里面存放的是Action类中通过set方法设置的属性值(表单传过来的值等),由OGNL框架实现; 2.stackContext: 也是用来存值的,s ...

  4. Java中的继承

    我们在以前的学习中,我们会了C#中的继承,今天我们来了解了解Java中的继承,其实都大同小异啦! 1.语法 修饰符 SubClass extends SuperClass(){ //类定义部分 } e ...

  5. OWIN概述

    关于OWIN OWIN defines a standard interface between .NET web servers and web applications. The goal of ...

  6. [Tool] 使用StyleCop验证命名规则

    [Tool] 使用StyleCop验证命名规则 前言 微软的MSDN上,有提供了一份微软的命名方针,指引开发人员去建立风格一致的程序代码. http://msdn.microsoft.com/zh-t ...

  7. 1、Flat UI Getting started(文档翻译)

    下载链接:http://www.bootcss.com/p/flat-ui/ 一.什么是Flat UI? Flat UI 是一种漂亮的Boostrap主题.我们重新设计了它的很多组件,使得其看起来扁平 ...

  8. iOS 自动布局详细介绍

    1. 自动布局的理解 iOS自动布局很有用,可以在不同size的屏幕上运行,原先看的头痛,还是习惯用最蠢的[UIScreen mainScreen].bounds.size.width等来布局,后来实 ...

  9. win-tc图形库编程

    本文地址:http://www.cnblogs.com/archimedes/p/win-tc-graphics-use.html,转载请注明源地址. 由于最近接到一个紧急任务,需要实现一个程序,显示 ...

  10. Ubuntu14.04下安装Hadoop2.5.1 (单机模式)

    本文地址:http://www.cnblogs.com/archimedes/p/hadoop-standalone-mode.html,转载请注明源地址. 欢迎关注我的个人博客:www.wuyudo ...