首页 > 开发 > Xml > 正文

浅谈 XmlReader

2020-02-03 16:11:40
字体:
来源:转载
供稿:网友
注册会员,创建你的web开发资料库,摘要
组成.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("</{0}>", 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("</{0}>", xtr.name);
xtr.close();
}
catch (exception e)
{
console.writeline("error:/t{0}", e.message);
}
return;
}
}
}

测试使用的xml文件,people.xml
<people>
<person>
<name>
<firstname>joe</firstname>
<lastname>suits</lastname>
</name>
<address>
<street>1800 success way</street>
<city>redmond</city>
<state>wa</state>
<zipcode>98052</zipcode>
</address>
<job>
<title>ceo</title>
<description>wears the nice suit</description>
</job>
</person>

<person>
<name>
<firstname>linda</firstname>
<lastname>sue</lastname>
</name>
<address>
<street>1302 american st.</street>
<city>paso robles</city>
<state>ca</state>
<zipcode>93447</zipcode>
</address>
<job>
<title>attorney</title>
<description>stands up for justice</description>
</job>
</person>
</people>

可以通过调用命令提示符运行程序,如:e:/>consoleapplication_xmlreader.exe people.xml

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









发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表