繁体中文
设为首页
加入收藏
当前位置:.Net技术首页 >> Asp.Net开发 >> 浅谈 XmlReader

浅谈 XmlReader

2007-08-15 08:00:00  作者:  来源:互联网  浏览次数:0  文字大小:【】【】【
简介:摘要 组成.NET平台的关键技术之一就是XML,这里简单谈谈如何使用.NET中的XMLReader。 1. XMLReader简介 XMLReader是一种快速、无缓冲、向前并只读的游标,用于读取XML文档,并且隐藏了底层数据交换的复杂性。XML...
关键字:XmlReader

摘要

组成.NET平台的关键技术之一就是XML,这里简单谈谈如何使用.NET中的XMLReader。

1. XMLReader简介

XMLReader是一种快速、无缓冲、向前并只读的游标,用于读取XML文档,并且隐藏了底层数据交换的复杂性。XMLReader作为一种"拉模型"较"推模型"的SAX有了多种优势,最主要的一个就是它更易使用,其次性能更为提高、并减少了编程的难度。

XMLReader类是一个抽象类,XMLTextReader,XMLValidatingReader,和XMLNodeReader类都继承自XMLReader类。XMLReader类有很多方法和属性用来读取XML文件的内容、查找XML元素的深度、判断当前元素的内容是否为空,以及导航XML的属性等。

2. XMLReader应用

在.NET构架中,XML类均被定义在System.XML名称空间中,如:XMLReader、XMLTextReader、 XMLValidatingReader、XMLNodeReader、XMLWriter、和XMLTextWriter,因此使用XMLReader时应该引入System.XML。

下面是一个简单的读取XML的控制台程序。

[Visual Basic]

Imports System

Imports System.XML

Module Module1

Sub Main(ByVal CmdArgs() As String)

Try

Dim sFileName As String = CmdArgs(0)

Dim xtr As New XMLTextReader(sFileName)

xtr.Read()

Console.WriteLine("<{0}>", xtr.Name)

Console.WriteLine(xtr.ReadInnerXML())

Console.WriteLine("", xtr.Name)

xtr.Close()

Catch eErr As Exception

Console.WriteLine("Error:\t{0}", eErr.Message)

End Try

End Sub

End Module

[C#]

using System;

using System.XML;

namespace ConsoleApplicationXMLReader

{

class ClassXMLReader

{

static void Main(string[] args)

{

try

{

String sFileName = args[0];

XMLTextReader xtr = new XMLTextReader(sFileName);

xtr.Read();

Console.WriteLine("<{0}>", xtr.Name);

Console.WriteLine(xtr.ReadInnerXML());

Console.WriteLine("", xtr.Name);

xtr.Close();

}

catch (Exception e)

{

Console.WriteLine("Error:\t{0}", e.Message);

}

return;

}

}

}

测试使用的XML文件,People.XML

Joe

Suits

1800 Success Way

Redmond

WA

98052

CEO

Wears the nice suit

Linda

Sue

1302 American St.

Paso Robles

CA

93447

Attorney

Stands up for justice

可以通过调用命令提示符运行程序,如:E:\>ConsoleApplication_XMLReader.exe people.XML

3. 小结

.NET的XMLReader提供了一种访问XML数据的良好接口,让开发人员更为轻松的读取XML文件中的内容,使得快速应用.NET成为可能。

责任编辑:admin
相关文章