最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c#對(duì)XML文檔的創(chuàng)建與增刪改查的示例代碼

 更新時(shí)間:2020年07月23日 09:06:59   作者:滑豬小板  
這篇文章主要介紹了c#對(duì)XML文檔的創(chuàng)建與增刪改查的示例代碼,文中講解非常細(xì)致,幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下

一、創(chuàng)建的第一種方式

//1、創(chuàng)建一個(gè)XML文檔
   XmlDocument doc = new XmlDocument();
   //2、創(chuàng)建第一行描述信息
   XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "utf-8", null);
   //3、將創(chuàng)建的第一行描述信息添加到文檔中
   doc.AppendChild(dec);
   //4、給文檔添加根節(jié)點(diǎn)
   XmlElement Books = doc.CreateElement("Books");
   doc.AppendChild(Books);
   XmlElement Book = doc.CreateElement("Book");
   Books.AppendChild(Book);
   XmlElement name = doc.CreateElement("name");
   name.InnerText = "水滸傳";
   Book.AppendChild(name);
   XmlElement author = doc.CreateElement("author");
   author.InnerText = "匿名";
   author.SetAttribute("name", "wjl");
   author.SetAttribute("count", "30");
   Book.AppendChild(author);
   doc.Save("Book.xml");
   Console.WriteLine("保存成功!");
   Console.ReadKey();

創(chuàng)建結(jié)果如下:

二、創(chuàng)建的第二種方式

 class Program
   {
    static void Main(string[] args)
    {
     List<Student> list = new List<Student>();
     list.Add(new Student(1, "wjl1", 22, "男"));
     list.Add(new Student(2, "wjl2", 21, "男"));
     list.Add(new Student(3, "wjl3", 22, "男"));
     list.Add(new Student(4, "wjl4", 24, "男"));
     XmlDocument xmldoc = new XmlDocument();
     XmlDeclaration xmldec = xmldoc.CreateXmlDeclaration("1.0", "utf-8", null);
     xmldoc.AppendChild(xmldec);
     XmlElement person = xmldoc.CreateElement("Person");
    xmldoc.AppendChild(person);
     for (int i = 0; i < list.Count; i++)
     {
      XmlElement stu = xmldoc.CreateElement("student");
      stu.SetAttribute("ID", list[i].Id.ToString());
      person.AppendChild(stu);
      XmlElement name = xmldoc.CreateElement("name");
      XmlElement age = xmldoc.CreateElement("age");
      name.InnerText = list[i].Name;
      age.InnerText = list[i].Age.ToString();
      stu.AppendChild(name);
      stu.AppendChild(age);
    }
     xmldoc.Save("Student.xml");
    Console.WriteLine("Student.xml");
    Console.ReadKey();
    }
  }
   class Student
   {
   int id;
   string name;
   int age;
   string sex;
   public Student(int id, string name, int age, string sex)
    {
     this.id = id;
     this.name = name;
     this.age = age;
     this.sex = sex;
   }
   public Student()
   {
   }
   }

創(chuàng)建結(jié)果如下:

三、對(duì)XML文件的添加

XmlDocument doc = new XmlDocument();
   //首先判斷文件是否存在,如果存在則追加否則在創(chuàng)建一個(gè)
   if (File.Exists("Student.xml"))
   {
    //加載
    doc.Load("Student.xml");
    //獲取根節(jié)點(diǎn),給根節(jié)點(diǎn)添加子節(jié)點(diǎn)
    XmlElement person = doc.DocumentElement;
    XmlElement student = doc.CreateElement("student");
    student.SetAttribute("ID", "1");
    person.AppendChild(student);
    XmlElement name = doc.CreateElement("name");
    XmlElement age = doc.CreateElement("age");
    name.InnerText = "zjs";
    age.InnerText = "41";
    student.AppendChild(name);
    student.AppendChild(age);
   }
   else {
   }
   doc.Save("Student.xml");
   Console.WriteLine("Student.xml 保存成功");

四、對(duì)XML文檔的查詢、修改、刪除

方法1:

文檔結(jié)構(gòu)為:

if (File.Exists("order.xml"))
   {
    doc.Load("order.xml");
    // 獲取根節(jié)點(diǎn)
    XmlElement orderElement = doc.DocumentElement;
    XmlNodeList orderChildr = orderElement.ChildNodes;
    foreach (XmlNode item in orderChildr)
    {
     Console.WriteLine("節(jié)點(diǎn)名稱:"+ item.Name + "節(jié)點(diǎn)的 InnerText :" + item.InnerText);
    }
    XmlElement orderitem = orderElement["Items"];
    XmlNodeList itemlist = orderitem.ChildNodes;
    foreach (XmlNode item in itemlist)
    {
     Console.WriteLine(item.Attributes["Name"].Value + " " + item.Attributes["Count"].Value);
    }
 }
   else
   {
    Console.WriteLine("文件不存在!");
   }
   Console.ReadKey();
   // doc.Save("Student.xml");
   Console.WriteLine("Student.xml 保存成功");

方法2:

#region 使用XPath的方式來讀取XML文件
   // 獲取文檔對(duì)象
   XmlDocument doc = new XmlDocument();
   doc.Load("order.xml");
   //獲取根節(jié)點(diǎn)
   XmlElement order = doc.DocumentElement;
   // 獲取單個(gè)節(jié)點(diǎn)
   //XmlNode xn = order.SelectSingleNode(@"/Order/CustomerName");
   XmlNode xn = order.SelectSingleNode(@"/Order/Items/OrderItem[@Name='碼表']");
   xn.Attributes["Count"].Value = "20"; // 修改
   doc.Save("Order.xml");
   Console.WriteLine(xn.Attributes["Count"].Value);
   Console.ReadKey();
   #endregion

刪除元素指定的特性:

xn.Attributes.RemoveNamedItem("Count"); //刪除元素指定的特性

刪除子節(jié)點(diǎn):

XmlNode xn = order.SelectSingleNode(@"/Order/Items");
XmlNode xnchild = order.SelectSingleNode(@"/Order/Items/OrderItem[@Name = '雨衣']");
xn.RemoveChild(xnchild); //刪除指定的子節(jié)點(diǎn)

刪除當(dāng)前所有子節(jié)點(diǎn):

xn.RemoveAll(); //刪除當(dāng)前節(jié)點(diǎn)的所有子節(jié)點(diǎn) 

刪除當(dāng)前節(jié)點(diǎn)的所有特性:

xnchild.Attributes.RemoveAll(); 

以上就是c#對(duì)XML文檔的創(chuàng)建與增刪改查的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于c#對(duì)XML文檔的創(chuàng)建與增刪改查的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C#實(shí)現(xiàn)鼠標(biāo)移動(dòng)到曲線圖上顯示值的方法

    C#實(shí)現(xiàn)鼠標(biāo)移動(dòng)到曲線圖上顯示值的方法

    這篇文章主要介紹了C#實(shí)現(xiàn)鼠標(biāo)移動(dòng)到曲線圖上顯示值的方法,是C#的WinForm窗體程序設(shè)計(jì)中非常實(shí)用的技巧,需要的朋友可以參考下
    2014-10-10
  • C#實(shí)現(xiàn)為視頻添加水印

    C#實(shí)現(xiàn)為視頻添加水印

    這篇文章主要為大家詳細(xì)介紹了C#如何使用ffmpeg命令,分別實(shí)現(xiàn)給視頻添加圖片水印以及文字水印,文中的示例代講解詳細(xì),感興趣的可以了解一下
    2023-01-01
  • C# 實(shí)現(xiàn)基于ADO.NET框架的DBHelper工具類(簡(jiǎn)化數(shù)據(jù)庫(kù)操作)

    C# 實(shí)現(xiàn)基于ADO.NET框架的DBHelper工具類(簡(jiǎn)化數(shù)據(jù)庫(kù)操作)

    ADO.NET是.NET框架中用于與數(shù)據(jù)庫(kù)交互的核心組件,提供了一套用于連接數(shù)據(jù)庫(kù)、執(zhí)行SQL查詢、插入、更新和刪除數(shù)據(jù)的類庫(kù),包括SqlConnection、SqlCommand、SqlDataReader等,本文介紹如何使用DBHelper類封裝數(shù)據(jù)庫(kù)操作,以提高代碼的可維護(hù)性和復(fù)用性,感興趣的朋友一起看看吧
    2024-08-08
  • C#設(shè)置程序開機(jī)啟動(dòng)的實(shí)現(xiàn)示例

    C#設(shè)置程序開機(jī)啟動(dòng)的實(shí)現(xiàn)示例

    本文主要介紹了C#設(shè)置程序開機(jī)啟動(dòng)的實(shí)現(xiàn)示例,可以通過修改注冊(cè)表將啟動(dòng)信息寫入注冊(cè)表來實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • C# ComboBox下拉框?qū)崿F(xiàn)搜索方式

    C# ComboBox下拉框?qū)崿F(xiàn)搜索方式

    文章介紹了如何在加載窗口時(shí)實(shí)現(xiàn)一個(gè)功能,并在ComboBox下拉框中添加鍵盤事件以實(shí)現(xiàn)搜索功能,由于數(shù)據(jù)不方便公開,作者表示理解并希望得到大家的指教
    2024-12-12
  • C#并行編程之Task任務(wù)

    C#并行編程之Task任務(wù)

    這篇文章介紹了C#并行編程之Task任務(wù),文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • C# 中文簡(jiǎn)體轉(zhuǎn)繁體實(shí)現(xiàn)代碼

    C# 中文簡(jiǎn)體轉(zhuǎn)繁體實(shí)現(xiàn)代碼

    C# 中文簡(jiǎn)體轉(zhuǎn)繁體實(shí)現(xiàn)代碼,需要的朋友可以參考一下
    2013-02-02
  • C#訪問SQLServer增刪改查代碼實(shí)例

    C#訪問SQLServer增刪改查代碼實(shí)例

    這篇文章主要為大家詳細(xì)介紹了C#訪問SQLServer增刪改查代碼實(shí)例,感興趣的小伙伴們可以參考一下
    2016-08-08
  • C#調(diào)用Oracle存儲(chǔ)過程的方法

    C#調(diào)用Oracle存儲(chǔ)過程的方法

    這篇文章主要介紹了C#調(diào)用Oracle存儲(chǔ)過程的方法,包含數(shù)據(jù)庫(kù)及C#對(duì)應(yīng)的調(diào)用代碼,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-01-01
  • C#關(guān)鍵字之覆寫overwrite介紹

    C#關(guān)鍵字之覆寫overwrite介紹

    這篇文章介紹了C#關(guān)鍵字之覆寫overwrite,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04

最新評(píng)論

邹平县| 呼伦贝尔市| 灌南县| 凤城市| 鹤岗市| 福海县| 云阳县| 天台县| 襄樊市| 承德市| 阿巴嘎旗| 隆尧县| 莒南县| 扎赉特旗| 华容县| 西峡县| 务川| 都昌县| 六枝特区| 阜平县| 海淀区| 浑源县| 洱源县| 楚雄市| 油尖旺区| 二连浩特市| 基隆市| 嘉义县| 得荣县| 洞口县| 海门市| 斗六市| 阳信县| 赤城县| 新邵县| 扶余县| 安国市| 广汉市| 集贤县| 米泉市| 龙山县|