<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    blog.Toby

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      130 隨筆 :: 2 文章 :: 150 評論 :: 0 Trackbacks

    c#讀寫xml文件

    [日期:01-16] [字體: ]
    c#讀寫xml文件
    已知有一個XML文件(bookstore.xml)如下:
    <?xml version="1.0" encoding="gb2312"?>
    <bookstore>
      <book genre="fantasy" ISBN="2-3631-4">
        <title>Oberon's Legacy</title>
        <author>Corets, Eva</author>
        <price>5.95</price>
      </book>
    </bookstore>
     
    1、往<bookstore>節點中插入一個<book>節點:
       XmlDocument xmlDoc=new XmlDocument();
       xmlDoc.Load("bookstore.xml");
       XmlNode root=xmlDoc.SelectSingleNode("bookstore");//查找<bookstore>
       XmlElement xe1=xmlDoc.CreateElement("book");//創建一個<book>節點
       xe1.SetAttribute("genre","李贊紅");//設置該節點genre屬性
       xe1.SetAttribute("ISBN","2-3631-4");//設置該節點ISBN屬性
     
       XmlElement xesub1=xmlDoc.CreateElement("title");
       xesub1.InnerText="CS從入門到精通";//設置文本節點
       xe1.AppendChild(xesub1);//添加到<book>節點中
       XmlElement xesub2=xmlDoc.CreateElement("author");
       xesub2.InnerText="候捷";
       xe1.AppendChild(xesub2);
       XmlElement xesub3=xmlDoc.CreateElement("price");
       xesub3.InnerText="58.3";
       xe1.AppendChild(xesub3);
     
       root.AppendChild(xe1);//添加到<bookstore>節點中
       xmlDoc.Save("bookstore.xml");
    //===============================================
    結果為:
    <?xml version="1.0" encoding="gb2312"?>
    <bookstore>
      <book genre="fantasy" ISBN="2-3631-4">
        <title>Oberon's Legacy</title>
        <author>Corets, Eva</author>
        <price>5.95</price>
      </book>
      <book genre="李贊紅" ISBN="2-3631-4">
        <title>CS從入門到精通</title>
        <author>候捷</author>
        <price>58.3</price>
      </book>
    </bookstore>
     
    2、修改節點:將genre屬性值為“李贊紅“的節點的genre值改為“update李贊紅”,將該節點的子節點<author>的文本修改為“亞勝”。
        XmlNodeList nodeList=xmlDoc.SelectSingleNode("bookstore").ChildNodes;//獲取bookstore節點的所有子節點
       foreach(XmlNode xn in nodeList)//遍歷所有子節點
       {
        XmlElement xe=(XmlElement)xn;//將子節點類型轉換為XmlElement類型
        if(xe.GetAttribute("genre")=="李贊紅")//如果genre屬性值為“李贊紅”
        {
         xe.SetAttribute("genre","update李贊紅");//則修改該屬性為“update李贊紅”
     
         XmlNodeList nls=xe.ChildNodes;//繼續獲取xe子節點的所有子節點
         foreach(XmlNode xn1 in nls)//遍歷
         {
          XmlElement xe2=(XmlElement)xn1;//轉換類型
          if(xe2.Name=="author")//如果找到
          {
           xe2.InnerText="亞勝";//則修改
           break;//找到退出來就可以了
          }
         }
         break;
        }
       }
     
       xmlDoc.Save("bookstore.xml");//保存。
    //==================================================
    最后結果為:
    <?xml version="1.0" encoding="gb2312"?>
    <bookstore>
      <book genre="fantasy" ISBN="2-3631-4">
        <title>Oberon's Legacy</title>
        <author>Corets, Eva</author>
        <price>5.95</price>
      </book>
      <book genre="update李贊紅" ISBN="2-3631-4">
        <title>CS從入門到精通</title>
        <author>亞勝</author>
        <price>58.3</price>
      </book>
    </bookstore>
     
    3、刪除 <book genre="fantasy" ISBN="2-3631-4">節點的genre屬性,刪除 <book genre="update李贊紅" ISBN="2-3631-4">節點。
    XmlNodeList xnl=xmlDoc.SelectSingleNode("bookstore").ChildNodes;
     
       foreach(XmlNode xn in xnl)
       {
        XmlElement xe=(XmlElement)xn;
        if(xe.GetAttribute("genre")=="fantasy")
        {
         xe.RemoveAttribute("genre");//刪除genre屬性
        }
        else if(xe.GetAttribute("genre")=="update李贊紅")
        {
         xe.RemoveAll();//刪除該節點的全部內容
        }
       }
       xmlDoc.Save("bookstore.xml");
    //===========================================
    最后結果為:
    <?xml version="1.0" encoding="gb2312"?>
    <bookstore>
      <book ISBN="2-3631-4">
        <title>Oberon's Legacy</title>
        <author>Corets, Eva</author>
        <price>5.95</price>
      </book>
      <book>
      </book>
    </bookstore>
     
    4、顯示所有數據。
       XmlNode xn=xmlDoc.SelectSingleNode("bookstore");
     
       XmlNodeList xnl=xn.ChildNodes;
      
       foreach(XmlNode xnf in xnl)
       {
        XmlElement xe=(XmlElement)xnf;
        Console.WriteLine(xe.GetAttribute("genre"));//顯示屬性值
        Console.WriteLine(xe.GetAttribute("ISBN"));
     
        XmlNodeList xnf1=xe.ChildNodes;
        foreach(XmlNode xn2 in xnf1)
        {
         Console.WriteLine(xn2.InnerText);//顯示子節點點文本
        }
       } 




    posted on 2008-05-30 15:58 渠上月 閱讀(337) 評論(0)  編輯  收藏 所屬分類: other tips
    主站蜘蛛池模板: 亚洲人成网站在线播放2019| 亚洲精品成人av在线| 亚洲AV无码国产精品色| 88av免费观看| 亚洲最新视频在线观看| 67pao强力打造国产免费| 亚洲精品视频在线播放| 最近2022中文字幕免费视频 | 亚洲成A人片在线观看无码3D| 亚洲爆乳无码精品AAA片蜜桃| 日本最新免费不卡二区在线| 国产亚洲视频在线观看网址 | 国产精品视频白浆免费视频| 久久久久亚洲精品成人网小说 | 青草草在线视频永久免费| 亚洲精品国产av成拍色拍| 婷婷亚洲天堂影院| 精精国产www视频在线观看免费| 亚洲色大成网站WWW久久九九| 美女视频黄的免费视频网页| 亚洲精品视频久久| 日本无卡码免费一区二区三区| 日产久久强奸免费的看| 亚洲春色在线视频| 114一级毛片免费| 国产亚洲综合视频| 亚洲av无码专区在线播放| 在线观看H网址免费入口| 亚洲av无码成人精品国产| 亚洲人成无码网站| 亚洲免费二区三区| 国产精品亚洲精品爽爽| 亚洲精品无码AV人在线播放 | 四虎精品亚洲一区二区三区| 亚洲一区免费观看| 亚洲国产精品成人午夜在线观看| 亚洲午夜AV无码专区在线播放| 99久久99热精品免费观看国产| 亚洲欧美国产日韩av野草社区| 在线亚洲午夜理论AV大片| 国产在线观看片a免费观看|