C#操作XML文件

     XML被设计用来传输和存储数据。

    首先在程序运行目录下创建了一个XML文件“Datas.xml”。内容如下:

<?xml version="1.0" encoding="utf-8"?>
<peoples>
  <!--人员信息-->
  <people>
    <name>张三</name>
    <age>20</age>
  </people>
  <people>
    <name>李四</name>
    <age>26</age>
  </people>
</peoples>

下面就来介绍一下C#操作XML的方法。

一、读取XML

/// <summary>
/// 读取XML中全部数据
/// </summary>
public static void ReadXML()
{
    Dictionary<string, string> dic = new Dictionary<string, string>();
    XElement xElement = XElement.Load(@"Datas.xml");
    IEnumerable<XElement> xElements = from ele in xElement.Elements("people") select ele;

    foreach (var item in xElements)
    {
        dic[item.Element("name").Value] = item.Element("age").Value;
    }
}

二、添加数据

/// <summary>
/// 往XML中添加数据
/// </summary>
public static void AddDatas()
{
    XElement xe = XElement.Load(@"Datas.xml");
    XElement element = new XElement(new XElement("people",new XElement("name", "大黄"),new XElement("age", "16")));
    xe.Add(element);
    xe.Save(@"Datas.xml");
}

三、修改数据

/// <summary>
/// 修改数据
/// </summary>
public static void UpdateData()
{
    XElement xe = XElement.Load(@"Datas.xml");
    IEnumerable<XElement> xElements = from ele in xe.Elements("people") where (string)ele.Element("name") == "大黄" select ele;
    if (xElements.Count() > 0)
    {
        xElements.First().ReplaceNodes(new XElement("name", "大黄"), new XElement("age", "6"));
    }
    xe.Save(@"Datas.xml");
}

四、删除数据

1、删除符合要求的数据,如删除"name"为"大黄"的数据:

/// <summary>
/// 删除符合条件数据
/// </summary>
public static void DeleData()
{
    XElement xe = XElement.Load(@"Datas.xml");
    IEnumerable<XElement> xElements = from ele in xe.Elements("people") where (string)ele.Element("name")=="大黄" select ele;
    if (xElements.Count() > 0)
    {
        xElements.First().Remove();
    }
    xe.Save(@"Datas.xml");
}

2、删除所有记录

/// <summary>
/// 删除全部数据
/// </summary>
public static void RemoveAll()
{
    XElement xElement = XElement.Load(@"Datas.xml");
    IEnumerable<XElement> xElements = from ele in xElement.Elements("people") select ele;
    if (xElements.Count() > 0)
    {
        xElements.Remove();
    }

    xElement.Save(@"Datas.xml");
}

五、创建XML文件

/// <summary>
/// 创建XML文件
/// </summary>
public static void CreateXmlFile()
{
    XDocument xDocument = new XDocument();
    XElement xRoot = new XElement("peoples");

    XElement xElement = new XElement(new XElement("people", new XElement("name", "大黄"), new XElement("age", "16")));

    xRoot.Add(xElement);
    xDocument.Add(xRoot);
    xDocument.Save(@"Datas.xml"); 
}

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值