<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
    主站蜘蛛池模板: 久久久久久国产精品免费免费| 亚洲国产日产无码精品| 我想看一级毛片免费的| a级精品九九九大片免费看| 亚洲国产精品无码久久98| 337p日本欧洲亚洲大胆精品555588 | 国产亚洲男人的天堂在线观看| 久久精品亚洲一区二区三区浴池| 亚洲乱码国产一区网址| 国产精品麻豆免费版| 日韩在线免费视频| 免费国产黄网站在线观看可以下载 | 美女被爆羞羞网站在免费观看| 亚洲www在线观看| 亚洲成a人片77777老司机| 中文字幕亚洲综合久久男男| 国产无遮挡吃胸膜奶免费看 | 亚洲一级在线观看| 亚洲视频中文字幕在线| 亚洲国产第一站精品蜜芽| 亚洲午夜爱爱香蕉片| 天堂亚洲免费视频| 免费a级毛片无码av| 国产极品美女高潮抽搐免费网站| 毛片免费观看网址| 天天天欲色欲色WWW免费| 在线观看视频免费完整版| 免费99精品国产自在现线| h在线观看视频免费网站| 99久久久国产精品免费牛牛四川| 最近免费字幕中文大全| 91成人免费福利网站在线| 三级毛片在线免费观看| 最近更新免费中文字幕大全| 在线观看片免费人成视频无码| 日韩成人免费视频播放| 午夜私人影院免费体验区| 日韩在线天堂免费观看| 国产免费人成视频在线观看| 四虎永久在线精品视频免费观看| 四虎永久精品免费观看|