詳解C#讀寫XML的範例程式碼

來源:互聯網
上載者:User
本文主要介紹了C# 讀寫XML的相關知識,具有很好的參考價值。下面跟著小編一起來看下吧

讀XML

XmlDocument xd = new XmlDocument();       string fileName = @"D:\test.xml";      xd.Load(fileName);      XmlNodeList xmlNoteList = xd.GetElementsByTagName("user");      List<User> users = new List<User>();           foreach (XmlElement item in xmlNoteList)      {        User user = new User();        user.Id = int.Parse(item.GetAttribute("id"));        XmlNodeList xnl = item.ChildNodes;        user.Name = xnl[0].InnerXml;        user.Age =int.Parse(xnl[1].InnerXml);        user.Gender = xnl[2].InnerXml;        users.Add(user);      }      foreach (var item in users)      {        Console.WriteLine(item);      }Read XML
<?xml version="1.0" encoding="gb2312"?><users>  <user id='1'>    <name >張三</name>    <age>15</age>    <gender>男</gender>  </user>  <user id='2'>    <name>李四</name>    <age>14</age>    <gender>男</gender>  </user></users>test.xml

寫XML

string fileName =@"D:\test.xml";      XmlDocument xmlDoc = new XmlDocument();      XmlNode header = xmlDoc.CreateXmlDeclaration("1.0","utf-8",null);      xmlDoc.AppendChild(header);      //建立一級節點      XmlElement rootNode = xmlDoc.CreateElement("users");      List<User> list = GetUsers();      foreach (var item in list)      {        XmlElement xn = InserUser(item,xmlDoc);        rootNode.AppendChild(xn);      }        xmlDoc.AppendChild(rootNode);      xmlDoc.Save(fileName);    }    /// <summary>    /// 建立整個user的元素    /// </summary>    /// <param name="user"></param>    /// <param name="xmlDoc"></param>    /// <returns></returns>    private static XmlElement InserUser(User user, XmlDocument xmlDoc)    {      XmlElement xn = xmlDoc.CreateElement("user");      xn.SetAttribute("id", user.Id + "");      xn.AppendChild(GetXmlNode(xmlDoc,"name",user.Name));      xn.AppendChild(GetXmlNode(xmlDoc, "age", user.Age + ""));      xn.AppendChild(GetXmlNode(xmlDoc, "gender", user.Gender));      return xn;    }    private static XmlElement GetXmlNode(XmlDocument xmlDoc,string name,string value)    {      XmlElement xn = xmlDoc.CreateElement(name);      xn.InnerText = value;      return xn;    }    private static List<User> GetUsers()    {      List<User> list = new List<User>();      for (int i = 0; i < 10; i++)      {        User user = new User();        user.Id = i;        user.Name = "Name" + i;        user.Age = 15;        user.Gender = "男";        list.Add(user);      }      return list;    }Write XML

實體類

class User  {    public int Id { set; get; }    public string Name { get; set; }    public int Age { get; set; }    public string Gender { set; get; }    public override string ToString()    {      return Id +","+Name + "," +Age+"," + Gender;    }  }Entity
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.