详解读写XML文件的代码案例
本文将会涉及3个方面的内容:
1.存取XML文件
2.XML文档对象模型
3.XML和DataSet
这里我们先介绍操作XML文件的两个对象:XmlTextReader和XmlTextWriter
打开和读取Xml文件使用到的对象就是XmlTextReader对象。下面的例子打开了与程序在同一路径下的一个例子文件sample.xml
XmlTextReader reader = new XmlTextReader("sample.xml");
然后我们可以通过其Read方法实现自动便利XML文件。例:
while(reader.Read()) { //在这里填写对于XML的操作代码 }
下面我们看一个复杂一些的例子。
while(reader.Read()) 2{ 3 switch(reader.NodeType) 4 { 5 case XmlNodeType.Element: //当前节点是一个元素 6 Console.Write("<" + reader.Name); 7 while(reader.MoveToNextAttribute()) //按照顺序读取下一个属性 8 Console.Write(" " + reader.Name + "='" + reader.Value + "'"); 9 Console.Write(">"); 10 break; 11 case XmlNodeType.DocumentType: //XML文件的类型声明 12 Console.WriteLine(reader.NodeType + "<" + reader.Name + ">" + reader.Value); 13 break; 14 …… 15 } 16 }
从第3行开始我们就根据NodeType属性去判断节点的类型,根据节点的不同类型进行不同的处理。
下表列出了一些常用的节点类型。
XmlTextReader的NodeType的取值 | |
类型 | 说明 |
All | 所有节点 |
Attribute | 一个属性 |
CDATA | 转义那些会被看作标记语言(如HTML)的文本 |
Comment | 使用分隔的注释 |
Document | XML数据树的根节点 |
DocumentType | 文档的类型声明,即标记 |
Element | 一个元素,通常是XML文件中的实际数据 |
EndTag | 元素的结束位置 |
None | 不是节点 |
Text | 返回元素的文本内容 |
XMLDeclaration | XML声明节点,例如 |
在进行写入XML文件时我们使用的XmlTextWriter类,它是XmlWriter的子类,速度快且不使用缓存,但是同XmlTextReader一样,在写入XML文件时只能向前。
我们假定要写入的XML文件在C盘根目录下:
XmlTextWriter writer = new XmlTextWriter("C:\\sample2.xml",null);
在这里如果不想把数据写入文件,而只是想在命令窗口显示,则可以把“Console.Out”作为参数传递给构造器,此时应把上述语句改为:
XmlTextWriter writer = new XmlTextWriter(Console.Out);
下面我们介绍一下写入XML文件数据的一些常用方法:
XmlTextWriter的常用方法 | ||
方法 | 说明 | 用法 |
WriteStartDocument | 写XML声明部分,即“” | writer.WriteStartDocument(); |
WriteEndDocument | 使没有闭合元素闭合 | writer.WriteEndDocument(); |
WriteDocType | 写DOCTYPE声明 | writer.WriteDocType("sample2",null,null,""); |
WriteStartElement | 写元素的开始标志 | writer.WriteStartElement("sample2"); |
WriteEndElement | 写元素的结束标志 | writer.WriteEndElement(); |
WriteString | 写入字符串 | writer.WriteString("Pride And Prejudice"); |
WriteCData | 写CDATA块,即写入的文字在间 | writer.WriteCData("Price 15% off!!"); |
WriteRaw | 手工写入一行,不作任何处理 | writer.WriteRaw("this & that"); |
WriteEntityRef | 写入实体引用,即前面加“&”后面加“;” | writer.WriteEntityRef("h"); |
WriteProcessingInstruction | 写入处理指令,即前面加“”后面加“?>” | writer.WriteProcessingInstruction("xml-stylesheet",PItext); |
WriteComment | 写入注释,自动加入注释标志“ ![]() 热AI工具![]() Undresser.AI Undress人工智能驱动的应用程序,用于创建逼真的裸体照片 ![]() AI Clothes Remover用于从照片中去除衣服的在线人工智能工具。 ![]() Undress AI Tool免费脱衣服图片 ![]() Clothoff.ioAI脱衣机 ![]() Video Face Swap使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸! ![]() 热门文章
如何修复KB5055523无法在Windows 11中安装?
4 周前
By DDD
如何修复KB5055518无法在Windows 10中安装?
4 周前
By DDD
<🎜>:种植花园 - 完整的突变指南
3 周前
By DDD
<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
如何修复KB5055612无法在Windows 10中安装?
3 周前
By DDD
![]() 热工具![]() 记事本++7.3.1好用且免费的代码编辑器 ![]() SublimeText3汉化版中文版,非常好用 ![]() 禅工作室 13.0.1功能强大的PHP集成开发环境 ![]() Dreamweaver CS6视觉化网页开发工具 ![]() SublimeText3 Mac版神级代码编辑软件(SublimeText3) ![]() XML文件是用于描述和传输数据的一种标记语言。它以其可扩展性、可读性和灵活性而闻名,广泛应用于Web应用程序、数据交换和Web服务。XML的格式和结构使得数据的组织和解释变得简单明了,从而提高了数据的交换和共享效率 。 ![]() 常见的XML文件打开方法:1、文本编辑器;2、浏览器;3、XML编辑器;4、集成开发环境;5、Microsoft Excel等等。 ![]() 如何使用PHP实现数据缓存和读写功能缓存是提高系统性能的一种重要方式,通过缓存可以将频繁使用的数据存储在内存中,以提高数据的读取速度。在PHP中,我们可以使用各种方法来实现数据缓存和读写功能。本文将介绍两种常用的方法:使用文件缓存和使用内存缓存。一、使用文件缓存文件缓存是将数据存储在文件中,以便后续读取。下面是一个使用文件缓存实现数据读写的示例代码: ![]() 概念fio,又称为FlexibleIOTester,是JensAxboe编写的应用程序。Jens是LinuxKernel中blockIOsubsystem的维护者。FIO是一种用于测试网络文件系统和磁盘性能的工具,常用于验证机型和比较文件系统性能。它能自动将fio命令发送到集群机器列表,并收集小文件的IOPS和大文件的吞吐量数据。rw=[mode]rwmixwrite=30在混合读写的模式下,写占30%moderead顺序读write顺序写readwrite顺序混合读写randwrite随机写r ![]() 文件系统APIJava文件操作的内部原理与操作系统的文件系统api密切相关。在Java中,文件操作是由java.NIO包中的java.nio.file模块提供的。该模块提供了对文件系统API的封装,使Java开发者能够在不同的操作系统上使用统一的API进行文件操作。文件对象当Java程序需要访问文件时,它首先需要创建一个java.nio.file.Path对象。Path对象代表了文件系统中的一个路径,可以是绝对路径也可以是相对路径。一旦创建了Path对象,就可以使用它来获取文件的各种属性,如名称 ![]() xml文件一般指里面写有可扩展标记语言的文件,XML是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。 ![]() 解密Java中处理DBF文件的读取和写入方法DBF(dBASEFile)是一种常见的数据库文件格式,通常用于存储表格数据。在Java程序中,处理DBF文件的读取和写入是一个比较常见的需求。本文将介绍如何使用Java解密这一过程,并提供具体的代码示例。一、读取DBF文件在Java中,读取DBF文件通常需要借助第三方库,比如使用dbfread库。首先需要在项目 ![]() xml文件可以使用文本编辑器、浏览器、XML编辑器和集成开发环境打开。1、文本编辑器,只需右键单击文件并选择适当的编辑器即可打开;2、浏览器,只需双击文件或将其拖放到浏览器窗口中即可打开;3、XML编辑器,这些工具具有XML语法的高亮显示、自动完成、语法检查和验证等功能,使我们能够更方便地编辑和管理XML文件;4、集成开发环境,供专门的功能来创建、编辑和调试XML文件。 ![]() |