xml
<?xml version="1.0" encoding="gb2312"?>
<?xml-stylesheet type="text/xsl" href="students.xsl"?>
<students>
<student sn="01">
<name>张三</name>
<age>18</age>
</student>
<student sn="02">
<name>李四</name>
<age>20</age>
</student>
</students>
DOM循环遍历获取所有节点
package com.ibm.xml;
import java.io.File;
import java.io.IOException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.xml.sax.SAXException;
/**
* 循环遍历获取所有节点
* @author Administrator
*
*/
public class DOMPrinter {
/**
* 打印节点名称
* @param node
*/
public static void printNodeInfo(Node node)
{
System.out.println(node.getNodeName()+" : "+node.getNodeValue());
}
/**
* 通过节点判断
* @param node
*/
public static void printNode(Node node)
{
short nodeType=node.getNodeType();
switch(nodeType)
{
//指令节点
case Node.PROCESSING_INSTRUCTION_NODE:
System.out.println("-----------PI start-----------");
printNodeInfo(node);
System.out.println("-----------PI end-----------");
break;
//元素节点
case Node.ELEMENT_NODE:
System.out.println("-----------Element start-----------");
printNodeInfo(node);
System.out.println("-----------Element end-----------");
NamedNodeMap attrs=node.getAttributes();
int attrNum=attrs.getLength();
for(int i=0;i<attrNum;i++)
{
Node attr=attrs.item(i);
System.out.println("-----------Attribute start-----------");
printNodeInfo(attr);
System.out.println("-----------Attribute end-----------");
}
break;
case Node.TEXT_NODE:
System.out.println("-----------Text start-----------");
printNodeInfo(node);
System.out.println("-----------Text end-----------");
break;
default:
break;
}
Node child=node.getFirstChild();
while(child!=null)
{
printNode(child);
child=child.getNextSibling();
}
}
public static void main(String arge[]){
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
try
{
DocumentBuilder db=dbf.newDocumentBuilder();
Document doc=db.parse(new File("students.xml"));
DOMPrinter.printNode(doc);
printNode(doc);
}
catch (ParserConfigurationException e)
{
// TODO 自动生成 catch 块
e.printStackTrace();
}
catch (SAXException e)
{
// TODO 自动生成 catch 块
e.printStackTrace();
}
catch (IOException e)
{
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
}
分享到:
相关推荐
在Visual Studio(VS)中,XML文件操作是一个重要的开发任务,尤其对于处理数据存储、配置文件、序列化或数据交换等场景。XML(eXtensible Markup Language)是一种标记语言,它提供了结构化的数据表示方式,易于...
本篇文章将详细探讨如何在C#中执行基本的XML文件操作,包括创建节点、删除节点以及更改节点等。 #### 二、环境搭建与准备 为了能够进行XML文件操作,我们需要一个包含XML数据的文件作为基础。本例中使用的XML文件名...
动态生成Rss文件 Xml操作 Xml文件的修改动态生成Rss文件 Xml操作 Xml文件的修改动态生成Rss文件 Xml操作 Xml文件的修改动态生成Rss文件 Xml操作 Xml文件的修改动态生成Rss文件 Xml操作 Xml文件的修改动态生成Rss文件...
js 操作xml 文件 读取xml文件 js 操作xml 文件 读取xml文件
二、读取XML文件 读取XML文件通常涉及到解析器的使用,例如DOM(Document Object Model)解析器、SAX(Simple API for XML)解析器和StAX(Streaming API for XML)。DOM将整个XML文档加载到内存中形成一棵树,便于...
在IT行业中,XML文件的操作是必不可少的技能,特别是CRUD(Create, Read, Update, Delete)操作,即创建、读取、更新和删除XML文件中的数据。下面将详细讲解XML文件的CRUD操作。 1. **创建(Create)** 创建XML...
这里我们讨论的"XML文件操作类"是用标准C++封装的,提供了便捷的读写XML文件的功能。 首先,`XMLFile.h`是头文件,它可能包含了类的声明和一些必要的函数原型。在C++中,类声明定义了类的结构,包括成员变量和成员...
本示例主要探讨如何在PowerBuilder 9(PB9)中进行XML文件的读取和写入操作。 首先,我们需要了解PowerBuilder中的XML支持。PB9引入了对XML的支持,包括XMLDocument对象和DOM解析器,使得开发者能够方便地与XML数据...
以下是关于XML文件操作和C#编程的相关知识点: 1. XML基本结构: - XML文档由元素(Element)组成,元素是XML的最基本单位,例如`<book>`。 - 元素可以包含属性(Attribute),如`<book id="123">`,属性提供了...
动态导航XML文件操作主要涉及对这些定义了导航结构的XML文件进行读取、修改和实时更新,以便根据用户需求或应用程序状态动态地调整导航内容。 首先,理解XML文件的结构至关重要。XML文件由一系列元素(Element)...
总的来说,QT通过QDomDocument、QDomElement等类提供了完整的XML处理功能,既支持XML文件的读取、解析,也支持写入操作。无论是在应用程序配置、数据存储还是与其他系统交换数据的场景中,这些工具都能极大地简化XML...
在IT行业中,文件管理和XML文件操作是至关重要的技能,尤其在使用C#进行Windows桌面应用开发时。本文将深入探讨如何使用C#进行系统文件管理和XML文件操作,并以"WindowsFormsApplication1"为例来说明实际的开发过程...
C++作为一款强大的编程语言,提供了多种方式来处理XML文件,本篇文章将重点讲解如何使用C++进行XML文件的操作。 首先,我们来看标题"**c++操作xml文件**",这表明我们要讨论的是如何在C++程序中读取、写入或修改XML...
本资源提供了一组XML文件操作的源代码,主要利用了TinyXML库进行实现。 TinyXML是一个轻量级的C++库,它的主要功能是解析XML文档,并将其转换为DOM(Document Object Model)结构,方便程序对XML数据进行读写操作。...
Java操作XML文件是Java开发中常见的一项任务,特别是在处理配置、数据交换或存储结构化信息时。XML(Extensible Markup Language)是一种标记语言,它的结构清晰、可读性强,易于机器解析和生成。本篇文章将深入探讨...
当我们谈论“反编译XML文件”,特别是二进制XML文件,这通常涉及到解析和解密那些以非传统方式存储或加密的XML数据。在这个场景下,我们关注的是如何从APK文件中提取并理解如`androidManifest.xml`这样的关键文件,...
针对XML文件的操作,Java提供了多种API,如DOM(Document Object Model)、SAX(Simple API for XML)和StAX(Streaming API for XML)。本项目中,你创建了一个自定义的Java类,用于实现XML文件的基本操作,包括...
XML文件操作实例 (C#源码)XML文件操作实例 (C#源码)XML文件操作实例 (C#源码)XML文件操作实例 (C#源码)XML文件操作实例 (C#源码)XML文件操作实例 (C#源码)XML文件操作实例 (C#源码)XML文件操作实例 ...
3. **XML文件操作步骤**: - 使用Excel打开XML文件:可以将XML文件导入到工作表中,形成表格数据。 - VBA读取XML:通过`DocumentElement`或`CreateNode`方法创建XML DOM对象,然后使用`Load`或`LoadXML`方法加载...