C# 讀寫XML(代碼分享)
更新時(shí)間:2017年03月22日 09:22:57 作者:X.S
本文主要介紹了C# 讀寫XML的相關(guān)知識(shí),具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧
讀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); //創(chuàng)建一級(jí)節(jié)點(diǎn) 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> /// 創(chuàng)建整個(gè)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
實(shí)體類
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
以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!
相關(guān)文章
C# 創(chuàng)建EXCEL圖表并保存為圖片的實(shí)例
下面小編就為大家分享一篇C# 創(chuàng)建EXCEL圖表并保存為圖片的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-12-12如何在datatable中使用groupby進(jìn)行分組統(tǒng)計(jì)
如何在datatable中進(jìn)行分組,并且計(jì)算分組后每組的數(shù)量,考慮了一下,可以使用LINQ來(lái)實(shí)現(xiàn)datatable分組,需要的朋友可以參考下2015-08-08C#(WinForm) ComboBox和ListBox添加項(xiàng)及設(shè)置默認(rèn)選擇項(xiàng)
這篇文章主要介紹了C#(WinForm) ComboBox和ListBox添加項(xiàng)及設(shè)置默認(rèn)選擇項(xiàng)的的相關(guān)資料,需要的朋友可以參考下2014-07-07C#實(shí)現(xiàn)嵌套循環(huán)的示例代碼
這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)嵌套循環(huán)的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-09-09C#使用IronPython調(diào)用Python的實(shí)現(xiàn)
本文主要介紹了C#使用IronPython調(diào)用Python的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02C#中JavaScriptSerializer幫助類用法實(shí)例
這篇文章主要介紹了C#中JavaScriptSerializer幫助類用法,實(shí)例分析了JavaScriptSerializer幫助類處理json字符串時(shí)的技巧,需要的朋友可以參考下2014-12-12