淺談 XmlReader
2024-09-05 20:55:42
供稿:網友
注冊會員,創建你的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成為可能。