Xml文件操作,基本入门

声明:本文是本人首次写博客,以前都是逛博客园,实在难以忍受只看不写,只汲取不付出,老夫便决定注册个号来发表一些基础文章,借以抛砖引玉。

       话不多说直接进入主题:

操作Xml当然包括获取节点值、添加节点、修改节点、删除节点。

首先学会如何添加节点以及给节点添加值吧!

我们来一个完整的例子吧。

1 FileStream fs = new FileStream(@"xml.xml", FileMode.Create);
2 fs.Close();

记得using一下:

using System.Xml;
using System.IO;

以上两行代码是新建一个名为xml,扩展名为xml的文件,当然为了确保程序不出错,在FileMode那可以这样写:FileMode.OpenOrCreate。这样写是为了

在多次运行时由于新建时覆盖了原来的文件。

操作xml文档需要用到的类就是XmlDocument、XmlElement、XmlNode。

我们首先要用XmlDocument这个类来加载xml文档:

  XmlDocument Xd = new XmlDocument();

我们先用XmlElement来创建两个Element:

 XmlElement Xet = Xd.CreateElement("People");
XmlElement xe = Xd.CreateElement("More");
xe.SetAttribute("Name", "jack");
xe.SetAttribute("Age", "18");
xe.SetAttribute("gender", "man");
- 写好两个节点后,我们需要让他们有序的结合在一起,结合的代码很简单:
  Xet.AppendChild(xe);
Xd.AppendChild(Xe);
意思就是把xe这个Element作为Xet这个Element的子节点,同时把Xet置于Xd下。注意:一个xml文档只能存在一个母节点,如下:
 <People><More Name="jack" Age="18" gender="man" />
 </People>
不能存在如下xml文档,否则不能打开:
 <People><More Name="jack" Age="18" gender="man" />
 </People>
<People><More Name="jack" Age="18" gender="man" />
 </People>
操作完后记得要保存哦,保存很简单:
 Xd.Save("xml.xml");
我们打开Xml文档,可以看到如下信息:
<People>
  <More Name="jack" Age="18" gender="man" />
  </People>
添加节点就到此结束,读者可以自己按照添加的方法添加N个子节点。
其次,我们来获取节点的值。
我们也需要先加载xml.xml的文档:
1  XmlDocument Xd = new XmlDocument();
2 Xd.Load("xml.xml");
获取值的话,我们先实例化一个节点对象,再直接调用属性就能获取到属性值了:
 XmlDocument Xd = new XmlDocument();
            Xd.Load(@"xml.xml");
 XmlNode Xn = Xd.SelectSingleNode("People");
 XmlElement xet = Xd.SelectSingleNode("More") as XmlElement;
            xet.GetAttribute("Name ");
 Xd.Save(@"xml.xml");
修改节点的话也是需要实例化一个XmlElement:
 XmlDocument Xd = new XmlDocument();
            Xd.Load(@"xml.xml");
 XmlNode Xn = Xd.SelectSingleNode("People");
  XmlNode Xn = Xd.SelectSingleNode("People");
XmlElement xet = Xd.SelectSingleNode("More") as XmlElement;
            xet.SetAttribute("Name", "Wills");
Xd.Save(@"xml.xml");

 

最后就是删除了,删除的话有删除节点的某个属性和删除整个节点,先来删除节点的某个属性吧,

 XmlDocument Xd = new XmlDocument();
Xd.Load(@"xml.xml");
XmlNode Xn = Xd.SelectSingleNode("People");
XmlElement xet = Xd.SelectSingleNode("More") as XmlElement;
xet.RemoveAttribute("Age");

当然还可通过节点的属性索引来删除,操作类似:   xet.RemoveAttributeat(0);
现在来删除整个节点吧!

 XmlDocument Xd = new XmlDocument();
Xd.Load(@"xml.xml");
XmlNode Xn = Xd.SelectSingleNode("People");
XmlElement xet = Xd.SelectSingleNode("More") as XmlElement;
xet.RemoveAll();

这样就行了,时间匆忙,越写越疏浅了,还请见谅。首次写博客希望大家给以支持,在以后的博客中我会详细的说明和解释的,力求让新手快速入门,也希望各路大虾来指导。

最后我想说的是:其实我是一个测试员。

 

posted on 2011-09-27 18:06  Zeech_Lee  阅读(1911)  评论(3编辑  收藏  举报

导航