网络编程
位置:首页>> 网络编程>> ASP.NET>> .NET中书写XML的一种简单方法(2)

.NET中书写XML的一种简单方法(2)

 来源:csdn 发布时间:2007-08-23 12:55:00 

标签:xml,.net

如果你编译并且执行上面的代码,你将创建这个XML文件,文件中包含如下内容:

<items><title>Unreal Tournament 2003</title><title>
C&C: Renegade</title><title>Dr. Seuss’s ABC
</title></items>


上面的代码创建了一个名为writer的XmlTextWriter对象。当这个对象被创建时,它被关联到一个名为titles.xml的文件。接着,程序创建了一个叫做items的根属性,WriteStartElement方法创建了这个属性的开始标签。接下来,程序调用了WriteElementString方法创建了三个子元素。从上面的代码你还可以看到,这个方法使用第一个参数(在上面的程序中是title)作为元素的标签;使用第二个参数作为元素的值。当你添加了所有的元素后,你需要关闭根元素。这时你可以调用WriteEndElement方法关闭那个最近被打开的元素;在本例中,这个最近被打开的元素就是根元素。当所有的数据都已经写好,根元素也已经关闭时,你可以将信息传送给你的XmlTextWriter。这意味着这时候你可以调用Close方法关闭它了。
上面的代码相对十分的简单,下面我们看一个使用了XmlTextWriter类中更多方法,功能更加完善的例子。

using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
XmlTextWriter writer = new XmlTextWriter("myMedia.xml", null);
//使用自动缩进便于阅读
writer.Formatting = Formatting.Indented;
//书写根元素
writer.WriteStartElement("items");
//开始一个元素
writer.WriteStartElement("item");
//向先前创建的元素中添加一个属性
writer.WriteAttributeString("rating", "R");
//添加子元素
writer.WriteElementString("title", "The Matrix");
writer.WriteElementString("format", "DVD");
//关闭item元素
writer.WriteEndElement(); // 关闭元素
//在节点间添加一些空格
writer.WriteWhitespace("\n");
//使用原始字符串书写第二个元素
writer.WriteRaw("<item>" + 
"<title>BloodWake</title>" +
"<format>XBox</format>" + 
"</item>");
//使用格式化的字符串书写第三个元素
writer.WriteRaw("\n <item>\n" +
" <title>Unreal Tournament 2003</title>\n" +
" <format>CD</format>\n" + 
" </item>\n");
// 关闭根元素
writer.WriteFullEndElement();
//将XML写入文件并关闭writer
writer.Close();
}
}


上面代码编译运行后将得到myMedia.xml文件,文件的内容为:

<items>
<item rating="R">
<title>The Matrix</title>
<format>DVD</format>
</item>
<item><title>BloodWake</title><format>XBox</format></item>
<item>
<title>Unreal Tournament 2003</title>
<format>CD</format>
</item>
</items>


上面代码中的注释说明了这个程序的功能是如何实现的。需要记住的一件事是:当调用方法开始一个操作时,你需要在程序的合适的地方调用方法结束这个操作。例如,你调用了StartElement,你就必须调用EndElement关闭元素;当然在这两个调用之间你也可以加入一个子元素。无论你何时调用EndElement方法,它总是关闭最近使用StartElement方法打开的那个元素(这和栈的工作方式很相似)。
使用XmlTextWriter十分的容易,不过我还是建议你自己动手试试这些代码和方法。你试过以后会发现这些代码能够很容易地集成到你的程序中。你还应该记住,XmlTextWriter仅仅是.NET提供的众多XML类中的一个。和XmlTextWriter一样,其他的XML类也十分的容易使用。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com