xml文件
<?xml version="1.0" encoding="GB2312"?>
<RESULT>
<VALUE>
<NO>A1234</NO>
<ADDR>四川省XX县XX镇XX路X段XX号</ADDR>
</VALUE>
<VALUE>
<NO>B1234</NO>
<ADDR>四川省XX市XX乡XX村XX组</ADDR>
</VALUE>
</RESULT>
第一种 DOM 实现方法
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
public class MyXMLReader2DOM {
public static void main(String arge[]) {
long lasting = System.currentTimeMillis();
try {
File f = new File("data_10k.xml");
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(f);
NodeList nl = doc.getElementsByTagName("VALUE");
for (int i = 0; i < nl.getLength(); i++) {
System.out.print("车牌号码:"+ doc.getElementsByTagName("NO").item(i).getFirstChild().getNodeValue());
System.out.println("车主地址:"+ doc.getElementsByTagName("ADDR").item(i).getFirstChild().getNodeValue());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
第二种,DOM4J实现方法
import java.io.*;
import java.util.*;
import org.dom4j.*;
import org.dom4j.io.*;
public class MyXMLReader2DOM4J {
public static void main(String arge[]) {
long lasting = System.currentTimeMillis();
try {
File f = new File("data_10k.xml");
SAXReader reader = new SAXReader();
Document doc = reader.read(f);
Element root = doc.getRootElement();
Element foo;
for (Iterator i = root.elementIterator("VALUE"); i.hasNext();) {
foo = (Element) i.next();
System.out.print("车牌号码:" + foo.elementText("NO"));
System.out.println("车主地址:" + foo.elementText("ADDR"));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
第三种 JDOM实现方法
import java.io.*;
import java.util.*;
import org.jdom.*;
import org.jdom.input.*;
public class MyXMLReader2JDOM {
public static void main(String arge[]) {
long lasting = System.currentTimeMillis();
try {
SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(new File("data_10k.xml"));
Element foo = doc.getRootElement();
List allChildren = foo.getChildren();
for (int i = 0; i < allChildren.size(); i++) {
System.out.print("车牌号码:"+ ((Element) allChildren.get(i)).getChild("NO").getText());
System.out.println("车主地址:"+ ((Element) allChildren.get(i)).getChild("ADDR").getText());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
第四种SAX实现方法
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.Attributes;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class MyXMLReader2SAX extends DefaultHandler {
java.util.Stack tags = new java.util.Stack();
public MyXMLReader2SAX() {
super();
}
public static void main(String args[]) {
long lasting = System.currentTimeMillis();
try {
SAXParserFactory sf = SAXParserFactory.newInstance();
SAXParser sp = sf.newSAXParser();
MyXMLReader2SAX reader = new MyXMLReader2SAX();
sp.parse(new InputSource("data_10k.xml"), reader);
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("运行时间:" + (System.currentTimeMillis() - lasting)
+ "毫秒");
}
public void characters(char ch[], int start, int length)
throws SAXException {
String tag = (String) tags.peek();
if (tag.equals("NO")) {
System.out.print("车牌号码:" + new String(ch, start, length));
}
if (tag.equals("ADDR")) {
System.out.println("地址:" + new String(ch, start, length));
}
}
public void startElement(String uri, String localName, String qName,
Attributes attrs) {
tags.push(qName);
}
}
分享到:
相关推荐
通过使用`pandas.DataFrame.to_xml()`方法,我们可以将DataFrame的数据转换成XML字符串或直接写入XML文件。 5. XML结构设计:在转换前,需要规划XML的结构,确定哪些Excel列对应于XML元素,哪些是属性,以及数据...
使用纯Java代码读取APK文件是一项常见的技术需求,例如为了分析应用的元数据、提取图标或查看权限设置等。下面我们将深入探讨如何在Java环境中处理APK文件。 首先,APK文件本质上是一个ZIP格式的压缩包,因此可以...
XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用在数据交换、配置文件、文档存储等领域。本文将详细讲解如何生成XML文件以及如何将XML文件导入到数据库中,并介绍压缩XML文件的相关方法。 一...
DOM是处理XML文档的一种模型,它将XML文档转化为一个树形结构,使得开发者可以通过节点操作来读取、修改和创建XML内容。 首先,解析XML文件主要涉及`javax.xml.parsers.DocumentBuilderFactory`和`org.w3c.dom....
Java+XML日程提醒系统是一个基于Java编程语言和XML(eXtensible Markup Language)的实用应用程序,用于创建、管理和提醒用户关于日常任务和事件。这个系统的核心功能可能包括事件的添加、修改、删除,以及设定提醒...
这个项目可能使用了其中一种或多种解析XML文档,读取RSS feed中的标题、链接、描述等信息。 3. **RSS规范**:理解RSS的结构和规范是开发RSS阅读器的基础。RSS有多个版本,如RSS 0.91、RSS 1.0、RSS 2.0等,它们定义...
在3D轮播项目中,我们需要编写ActionScript代码来读取XML文件,加载图片,以及实现3D旋转动画。 3. **3D旋转算法**:为了实现3D旋转,我们需要运用一些基本的三维图形学知识,如矩阵变换。ActionScript 3 提供了`...
以上代码示例展示了如何使用Java处理RAR5、Zip和7z文件的基本方法。在实际项目中,你需要根据具体需求对这些代码进行适当的修改和扩展,例如添加错误处理、支持更多的压缩格式或提高性能等。在跨平台方面,由于Java...
2. **SAX解析器**:Simple API for XML (SAX) 是一种事件驱动的解析器,它逐行读取XML文档,遇到元素、属性等时触发事件。SAX解析器内存效率高,适合处理大文件,但编程模型相对复杂,因为需要实现事件处理器接口。 ...
压缩包中的`exml`文件可能是XML格式的,要读取并转换它,首先需要将其解压,然后用上述代码处理XML字符串。使用Java的`java.util.zip`包可以实现解压。 ```java import java.io.File; import java.io....
读取该文件并解析XML,可以获取到包名。 ```java String manifestContent = extractFileFromApk("AndroidManifest.xml", apkFile); Document doc = DocumentBuilderFactory.newInstance().newDocumentBuilder()....
在Java编程中,有时我们需要处理文件的压缩与解压缩任务,特别是当涉及到7z这种高效压缩格式时。7z文件格式提供了比常见的ZIP或RAR格式更高的压缩率,但它的Java支持相对较少。本文将通过一个实例展示如何使用7-zip...
DWR.xml配置文件说明书 1、 建立dwr.xml 配置文件 任何一个dwr.xml的文件都需要包含DWR DOCTYPE的声明行,格式如下: <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" ...
在这个"Maven项目解析Excel"中,我们关注的是如何使用Java处理两种不同格式的Excel文件:`.xls`(Excel 97-2003工作簿)和`.xlsx`(Excel 2007及以上版本的OpenXML格式)。以下是关于这个主题的详细知识点: 1. **...
在给定的压缩包文件`GenerateXnodes.java`中,我们可以推测这是一个用于生成Java文件的类或方法,可能用于动态创建XML节点相关的Java代码。具体的实现细节取决于该文件的实际内容,但基本的文件生成流程如上所述。 ...
1. **解析XML文档**:Xerces能够读取XML文件并将其转换为内存中的数据结构,如DOM(Document Object Model)或SAX(Simple API for XML)。DOM将整个XML文档加载到内存中,便于遍历和操作;SAX则采用事件驱动的方式...
1,读取项目中的所有strings.xml文件并导出为excel得到excel1。 2,可以将同样结构的excel2中的内容同步到excel1。 3,将所有excel1中的内容以自行配置(StringsToExcel.java)的文件夹(如"values-ko-rKR", "values-ja...
Java 源码:文件压缩解压缩包 Commons Compress 是一个强大的开源库,它提供了对多种文件压缩格式的支持。这个库是由 Apache 软件基金会开发的,是 Java 平台上处理压缩和归档文件的标准工具之一。在 Java 开发中,...
一种方法是创建一个自定义的`InputStream`类,例如`XmlInputStream`,它包裹原始的`ZipInputStream`并控制其读取行为。这个自定义流可以在解析XML或HTML文件时保持打开状态,直到解析完成后再关闭。 以下是一种可能...
PList是一种用于存储数据结构的文件格式,类似于XML,通常用来保存应用程序的配置、偏好设置或者简单数据。Blister类库允许Java开发者在不依赖Apple的SDK的情况下读取和写入PList文件,使得跨平台开发变得更加便捷。...