阅读文章(首页/程序开发/XML教程/)

在.NET Framework中轻松处理XML数据(5-2)

[日期:2005-04-20] 来源:中国站长学院  作者:郁郁小蝎 [字体: ]

图十二所示的代码演示了客户端用XMLTextReadWriter类在读操作的同时修改属性值的优势。在本期的msdn中提供了XMLTextReadWriter类的C#和VB源代码下载(见本文开头提供的链接)。
Figure 12 Changing Attribute Values

private void ApplyChanges(string nodeName, string attribName,

string oldVal, string newVal)

{

XMLTextReadWriter rw = new XMLTextReadWriter(InputFileName.Text,

OutputFileName.Text);

rw.WriteStartDocument(true, CommentText.Text);



// 手工修改根节点

rw.Writer.WriteStartElement(rw.Reader.LocalName);



// 开始修改属性

// (可以修改更多节点的属性)

rw.AddAttributeChange(nodeName, attribName, oldVal, newVal);



// 循环处理文档

while(rw.Read())

{

switch(rw.NodeType)

{

case XMLNodeType.Element:

rw.Writer.WriteStartElement(rw.Reader.LocalName);

if (nodeName == rw.Reader.LocalName)

// 修改属性

rw.WriteAttributes(nodeName);

else

// deep copy

rw.Writer.WriteAttributes(rw.Reader, false);



if (rw.Reader.IsEmptyElement)

rw.Writer.WriteEndElement();

break;

}

}



// Close the root tag

rw.Writer.WriteEndElement();



// Close the document and any internal resources

rw.WriteEndDocument();

}



XMLTextReadWriter类不仅可以读XML文档,也可以写XML文档。你可以它来读XML文档的内容,如果需要,你还可以用它来做一些基本的更新操作。基本的更新操作在这里是指修改某个已存在的属性的值或者某个节点的内容,又或者是增加一个新的属性或节点。对于更复杂的操作,最好还是用XMLDOM分析器。

总结

Reader和Writer是.NET Framework中处理XML数据的根本。它们提供了对所有XML数据访问功能的原始的API。Reader像一个新的分析器类,它即有XMLDOM的强大,又有SAX的快速简单。Writer为简单的创建XML文档而设计。虽然Reader和Writer都是.NET Framework中的一小块,但是它们是相互独立的API。在本文中,我们只讨论了怎么样用Reader和Writer完成一些主要的工作, 介绍了验证分析器的原理机制,并把Reader和writer整合在一个单独的类中。上述所有的这些类都是轻量级的,类似于游标式的XMLDOM分析器。


阅读:
录入:

评论 】 【 推荐 】 【 打印
上一篇:在.NET Framework中轻松处理XML数据(5-1)
下一篇:将改变我们生活的这些XML应用之一
相关文章      
本文评论
  dfdfsdfsdfdf   (dfdsfasd ,2008-07-28 )
发表评论


点评: 字数
姓名:

  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款