302Soft—302软件技术联盟

ASP.NET / C# / PowerBuilder 技术交流
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

C#操作XML文件(例2)

Posted on 2007-01-17 17:00  寒夜听雨  阅读(2449)  评论(1编辑  收藏  举报
//创建xml文件(添加根节点的属性)

StreamWriter sw 
= File.CreateText(AppDomain.CurrentDomain.BaseDirectory + "Xml\\" + xmlFilename + ".xml");

sw.WriteLine(
"<?xml version='1.0' encoding='utf-8' ?>");

sw.WriteLine(
"<media></media>");

sw.Close();

XmlDocument doc 
= new XmlDocument();

doc.Load(AppDomain.CurrentDomain.BaseDirectory 
+ "Xml\\" + xmlFilename + ".xml");

XmlNode nodePath 
= doc.SelectSingleNode("//media");

if (!(nodePath == null))

{

      XmlNode titleAttribute;

      titleAttribute 
= doc.CreateAttribute("title");

      titleAttribute.Value 
= TextBox1.Text;

      nodePath.Attributes.SetNamedItem(titleAttribute);

       XmlNode imgAttribute;

       imgAttribute 
= doc.CreateAttribute("imagesUrl");

       imgAttribute.Value 
= "~/images/parent.gif";

       nodePath.Attributes.SetNamedItem(imgAttribute);

       RootTitle 
= TextBox1.Text;

 }

doc.Save(AppDomain.CurrentDomain.BaseDirectory 
+ "Xml\\" + xmlFilename + ".xml");

//写xml(添加子节点、子节点的属性)

XmlDocument doc 
= new XmlDocument();

doc.Load(AppDomain.CurrentDomain.BaseDirectory 
+ "Xml\\" + xmlFilename + ".xml");

XmlNode find 
= doc.SelectSingleNode("//media[@title=\"" + tmp.Text + "\"]");

if (find == null)

{

     XmlNode xmlroot 
= doc.SelectSingleNode("//media[@title=\"" + TreeView1.SelectedNode.Text + "\"]");

     XmlElement parentXmlNode 
= doc.CreateElement("media");

     xmlroot.AppendChild(parentXmlNode);

     parentXmlNode.SetAttribute(
"title", TextBox1.Text);

     parentXmlNode.SetAttribute(
"imagesUrl""~/images/node.gif");

 doc.Save(AppDomain.CurrentDomain.BaseDirectory 
+ "Xml\\" + xmlFilename + ".xml");

 }

//读节点属性

XmlNode aa
= doc.SelectSingleNode("//"+addr+"[@code=\"" + code + "\"]"); 

private string getXmlAttribute(XmlNode aa)

    {       

        
if (aa != null)

        {

            XmlElement aaNode 
= (XmlElement)aa;

            
if (aaNode.HasAttribute("url"))

            {

               navtmp 
= "<a href=" + aaNode.Attributes["url"].Value + ">" + aaNode.Attributes["name"].Value + "</a>" + "--->" + navtmp;

   ;   getXmlAttribute(aaNode.ParentNode);

            }

        }

        
return navtmp;

    }

//删除节点

XmlDocument doc 
= new XmlDocument();

doc.Load(AppDomain.CurrentDomain.BaseDirectory 
+ "Xml\\" + xmlFilename + ".xml");

XmlNode xmlroot 
= doc.SelectSingleNode("//media[@title=\"" + selectText + "\"]");

xmlroot.ParentNode.RemoveChild(xmlroot);

doc.Save(AppDomain.CurrentDomain.BaseDirectory 
+ "Xml\\" + xmlFilename + ".xml");

Copyright(C) 2004-2007 302Soft-寒夜听雨 版权所有