`
piperzero
  • 浏览: 3471846 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

java访问xml文件

 
阅读更多
package com.luqin.java.common.xml;

import java.io.*;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

public class XmlJava {
	public static void main(String args[]) {
		Element element = null;
		File f = new File("a.xml");
		DocumentBuilder db = null; // documentBuilder为抽象不能直接实例化(将XML文件转换为DOM文件)
		DocumentBuilderFactory dbf = null;
		try {
			dbf = DocumentBuilderFactory.newInstance(); // 返回documentBuilderFactory对象
			db = dbf.newDocumentBuilder();// 返回db对象用documentBuilderFatory对象获得返回documentBuildr对象
			Document dt = db.parse(f); // 得到一个DOM并返回给document对象
			element = dt.getDocumentElement();// 得到一个elment根元素
			System.out.println("根元素:" + element.getNodeName()); // 获得根节点
			NodeList childNodes = element.getChildNodes(); // 获得根元素下的子节点
			for (int i = 0; i < childNodes.getLength(); i++) { // 遍历这些子节点
				Node node1 = childNodes.item(i); // childNodes.item(i);
													// 获得每个对应位置i的结点
				if ("Account".equals(node1.getNodeName())) { // 如果节点的名称为"Account",则输出Account元素属性type
					System.out.println("\r\n找到一篇账号. 所属区域: "
							+ node1.getAttributes().getNamedItem("type")
									.getNodeValue() + ". ");
					NodeList nodeDetail = node1.getChildNodes(); // 获得
																	// <Accounts>下的节点
					for (int j = 0; j < nodeDetail.getLength(); j++) { // 遍历
																		// <Accounts>下的节点
						Node detail = nodeDetail.item(j); // 获得
															// <Accounts>元素每一个节点
						if ("code".equals(detail.getNodeName())) // 输出code
							System.out
									.println("卡号: " + detail.getTextContent());
						else if ("pass".equals(detail.getNodeName())) // 输出pass
							System.out
									.println("密码: " + detail.getTextContent());
						else if ("name".equals(detail.getNodeName())) // 输出name
							System.out
									.println("姓名: " + detail.getTextContent());
						else if ("money".equals(detail.getNodeName())) // 输出money
							System.out
									.println("余额: " + detail.getTextContent());
					}
				}
			}
		} catch (Exception e) {
			System.out.println(e);
		}
	}
}

<?xml version="1.0" encoding="gbk"?>
<Accounts>
	<Account type="by0003">
		<code>100001</code>
		<pass>123</pass>
		<name>李四</name>
		<money>1000000.00</money>
	</Account>
	<Account type="hz0001">
		<code>100002</code>
		<pass>123</pass>
		<name>张三</name>
		<money>1000.00</money>
	</Account>
</Accounts>

分享到:
评论

相关推荐

    Java实现用DOM文档和XML文件互换的操作

    该模型定义了THML和XML文件在内存中的逻辑结构,提供了访问、存取THML和XML文件的方法。利用DOM规范,可以实现DOM文档和XML之间的相互转换,遍历、操作相应DOM文档的内容。可以说,要自由的操纵XML文件,就要用到DOM...

    使用Java XML解析器实现一个简单的XML文档操作.txt

    这个代码实现了一个简单的XML文档操作。首先导入了所需的库,然后定义了一个名为SimpleXML的类,并在main()方法中创建了一个XML文档...由于使用了DOM解析器来访问XML文档,因此可以方便地获取和修改XML文档中的数据。

    JAVA_API1.6文档(中文)

    java.util.jar 提供读写 JAR (Java ARchive) 文件格式的类,该格式基于具有可选清单文件的标准 ZIP 文件格式。 java.util.logging 提供 JavaTM 2 平台核心日志工具的类和接口。 java.util.prefs 此包允许应用程序...

    java解析xml及4种常用解析比较

    DOM采用建立树形结构的方式访问XML文档,而SAX采用的事件模型。 DOM解析器把XML文档转化为一个包含其内容的树,并可以对树进行遍历。用DOM解析模型的优点是编程容易,开发人员只需要调用建树的指令,然后利用...

    利用Java技术实现基于XML的Web服务

    实现Web 服务主要基于两项技术: ...表现逻辑,访问XML 文档,以及对XML 文档进行操作。J ava 技术允许开发者利用现有的已经成熟的底层框架, 在其上构建新的功能。开发者可以利用J 2EE 的标准API 以及各种组件来开发系统。

    java 的dom的读取xml

    XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。 在学习之前应该具备的知识: 在您继续学习之前,应该对下面的知识有基本的了解: • HTML / XHTML • XML / XML 命名...

    Java常用代码

    各种Java功能代码,Java访问XML文件,Java数据库访问技术,Java对工作方式日期的处理

    Java中读取XML 文件的知识点

    xml 解析 dom 文档对象模型(随机访问) 效率慢 受大小限制(10M) SAX 事件驱动(效率高,不受大小限制) 一、Dom4j下载及使用Dom4j读写XML简介: 要使用dom4j读写XML文档,需要先下载dom4j包,dom4j官方网站...

    利用AJAX修改服务器端XML并在客户端访问XML

    利用AJAX为服务器端XML文件添加结点,并在客户端访问这个XML文件。

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    JavaAPI1.6中文chm文档 part1

    java.util.jar 提供读写 JAR (Java ARchive) 文件格式的类,该格式基于具有可选清单文件的标准 ZIP 文件格式。 java.util.logging 提供 JavaTM 2 平台核心日志工具的类和接口。 java.util.prefs 此包允许应用程序...

    基于Java的XML解析与反射设计模式.doc

    xstream可以完美转换xml,与以往的解析xml工具dom相比,xstream是一个易用的、开源 的库,使用起来简单、小巧,容易理解,可以轻易的将java对象和xml文档相互转换,而 且可以修改某个特定的属性和节点名称。...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    XML DOM技术的设计

    掌握DOM解析器,包括创建DOM解析器的步骤;Doucument对象的结构。节点的类型,包括Node接口;...根据以下提供的Customer.xml,使用DOM编写Java文件Customer1.java访问XML的特定节点,将XML文档中的所有数据读取出来。

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    java源码包---java 源码 大量 实例

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    Java实验7 序列化.doc

    本专栏主要为Java程序设计(基础)实验报告和Java程序设计(进阶)实验报告,基础篇有JAVA环境搭建、Java语言基础、方法和数组、面向对象基础、Java常用类、继承与接口、成员访问控制与异常、JavaFX程序设计、Java...

    XJava:XML+Java=XJava面向XML编程。XML描述、定义、控制、执行Java

    XJava XJava 系统标记 通用标记属性 关键字 逻辑判断 if 真值才解释 ifnot 假值才解释 注解 @Xjava 依赖注入 @Xsql 映射SQL配置文件,无须持久层实体类...定义XML文件中节点对应的Java类型。 写在XML文件的最外层节点之

    Java中四种XML解析技术

    然而由于使用 DOM 解析器的时候需要处理整个 XML 文档,所以对性能和内存的要求比较高,尤其是遇到很大的 XML 文件的时候。由于它的遍历能力,DOM 解析器常用于 XML 文档需要频繁的改变的服务中。  SAX 解析器...

Global site tag (gtag.js) - Google Analytics