当我们读取xml时:
1.建立一个text.xml
<?xml version="1.0" encoding="UTF-8"?>
<Books>
<Book>
<Price></Price>
<Title></Title>
</Book>
</Books>
2.
package xml;
import java.util.ArrayList;
import java.util.List;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
public class XMLReader {
private String fileName;
public XMLReader(String fileName) {
this.fileName = fileName;
}
public Element getRootElement() throws Exception {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(fileName);
return document.getDocumentElement();
}
public List<Element> getElementsByTagName(Element parent, String tagName) {
List<Element> elements = new ArrayList<Element>();
if (parent != null) {
NodeList list = parent.getElementsByTagName(tagName);
for (int i = 0; i < list.getLength(); i++) {
elements.add((Element) list.item(i));
}
}
return elements;
}
public Element getElementByTagName(Element parent, String tagName, int index) {
List<Element> elements = getElementsByTagName(parent, tagName);
if (index < 0 || index >= elements.size()) {
return elements.get(0);
} else {
return elements.get(index);
}
}
public String getTextContent(Element e) {
return e.getTextContent();
}
public String getAttribute(Element e, String name) {
return e.getAttribute(name);
}
public static void main(String[] args) {
try {
XMLReader reader = new XMLReader("E:\\test.xml");
Element root = reader.getRootElement();
System.out
.println(reader.getElementsByTagName(root, "Book").size());
Element book = reader.getElementByTagName(root, "Book", 0);
Element price = reader.getElementByTagName(book, "Price", 0);
System.out.println(price.getTextContent());
Element title = reader.getElementByTagName(book, "Title", 0);
System.out.println(reader.getTextContent(title));
System.out.println(reader.getAttribute(title, "Auth"));
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
而XmlReader作为.NET Framework中的一个强大的XML解析器,能够高效地读取XML数据,特别适合处理大型XML文件。 首先,我们需要理解XmlReader的工作原理。XmlReader是一种只前进、不可回溯的流式解析器,它不会将整个...
本文将详细介绍如何使用`XmlReader`来读取XML文档,并通过两个实际示例——`CustomersReader`和`CarsReader`,帮助初学者理解其用法。 首先,让我们了解`XmlReader`的基本使用方法。创建`XmlReader`对象通常通过`...
使用SAX方法读取XML文件,需要创建XMLReader对象,注册事件处理器,然后读取XML文件触发事件处理器进行数据提取。 优点:SAX方法提供了高效的XML解析方式,不需要将整个XML文档加载到内存中,适合大型XML文件的读取...
本实例将深入探讨如何在VB环境中不依赖XML.DLL库来读取XML文件的节点值。 首先,我们需要了解XML文件的基本结构。XML文件由一系列的元素(Element)组成,每个元素可以有属性(Attribute)和子元素。元素通过标签...
下面,我们将详细介绍三种使用C#读取XML文件并将其写入数据库的方法。 1. **使用XmlReader类逐行读取并写入** - `XmlReader` 是一个高效的流式读取器,不占用大量内存。通过创建`XmlReader`实例,我们可以逐个节点...
本示例将详细介绍如何在C#中读取XML文件,帮助开发者理解并掌握相关技术。 首先,让我们了解XML文件的基本结构。XML文件通常包含元素(Element)、属性(Attribute)、文本内容(Text Content)等组成部分。元素是...
3. **解析XML**:调用`XMLReader.parse()`方法,传入XML文件的URL或输入流,解析器开始读取XML并触发事件处理器中的相应方法。 4. **处理事件**:在事件处理器中,我们可以根据接收到的事件类型来处理XML文档中的...
//通过文件路径及文件名读取xml public XMLReader(String path, String filename); //初始化读取包下的的XML文件 public XMLReader(Package package1, String fileName); //读取WEB-INF下的xml文件 public XMLReader...
XmlReader读取Xml需要通过Read()实例方法,不断读取Xml文档中的声明,节点开始,节点内容,节点结束,以及空白等等,直到文档结束,Read()方法返回false。如下读取Xml内容实例代码和注释说明 代码如下:using System;...
本篇文章将详细探讨如何在C#中读取XML文件,并生成Web标签。 首先,我们需要了解XML的基本结构。XML文档由元素、属性、文本内容以及命名空间等组成。每个XML文件都有一个根元素,其他的元素嵌套在其下。C#提供了...
使用`XmlReader`的`Read()`方法逐个读取XML文件中的节点。当遇到元素节点时,可以检查其属性和子节点。例如: ```csharp while (reader.Read()) { if (reader.NodeType == XmlNodeType.Element) { string ...
本篇文章将深入探讨如何使用Java递归地读取XML文件。 首先,我们需要了解XML的基本结构。XML(eXtensible Markup Language)是一种标记语言,它的层次结构由元素(Element)、属性(Attribute)以及文本内容(Text ...
- `XmlReader`:抽象基类,提供按节点流式读取XML的能力,如`Read()`, `ReadString()`等。 - `XmlTextReader`:继承自`XmlReader`,专用于文本格式的XML读取。 - `XmlValidatingReader`:增加了XML验证功能的`...
`XmlReader`提供了一个快速、非缓存、只向前移动的接口来读取XML文档。`XmlTextReader`类则进一步提供了对文本格式的XML文档的读取支持。 #### 四、使用`XmlTextReader`读取XML文档 下面是一段示例代码,展示了...
本篇教程的目标是让开发者熟练地使用三种主要的ASP.NET类来读取XML文件:XmlReader、XMLDocument和XMLWriter。首先,我们来看XmlReader,这是一个高效且节省内存的读取器,它不存储整个XML文档,而是按需读取节点,...
这个“读取XML属性值.rar”压缩包可能包含了一个示例或工具,用于演示如何在编程中读取XML文档中的属性值。 在读取XML属性值时,我们通常会用到以下知识点: 1. XML的基本结构:XML文档由元素、属性、文本、注释等...
在Java编程中,读取XML文件并将其转换为树形结构是一种常见的操作,尤其是在处理配置文件、数据交换或解析XML文档时。以下是一篇详细解释如何实现这一过程的文章。 首先,我们需要了解XML(eXtensible Markup ...
本篇将详细介绍Java读取XML文件的四种常见方式,并结合实际示例进行解析。 1. DOM(Document Object Model)解析: DOM解析器将整个XML文件加载到内存中,构建一个树形结构,允许我们通过节点操作来访问和修改XML...
最后,使用创建的解析器和处理器读取XML文件: ```java InputStream is = context.getResources().openRawResource(R.raw.xmlFile); // 获取XML文件输入流 saxParser.parse(is, new MyHandler()); is.close(); ``` ...
1. **事件驱动的解析**:`xmlReader`按需读取XML文档,仅在需要时加载数据,这大大减少了内存占用。 2. **支持验证**:可以使用DTD、XSD、RNG等规范对XML文档进行验证,确保数据的正确性和完整性。 3. **属性访问**...