winform對xml文件的操作

  1. 1.Xml文檔如下
    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
    <add key="IIDataBase" value="Server=192.168.10.12,2433;database=mang;user id=sa;password=2008sqlpwd;">
    </add>
    <add key="IIIDataBase" vaule="Server=192.168.10.22,6666;database=iii;user id=sa;password=nbPwd;">
    </add>
    <add key="RegisterDescription" value="用戶根據系統提供的機器碼經由算號器計算出註冊號填入下框中進行產品註冊。\r\n注:\r\n1.算號器由專人負責。\r\n2.如有其他問題聯繫管理員。">
    </add>
    <add key="RegisterCode" value="dsafds">
    </add>
    </configuration>

    2.定義一個類用來操作xml文檔
        public class Config
        {
            private XmlDocument xmlDoc; //引入命名空間:using System.Xml;
            private string filePath = Application.StartupPath + @"\help\config.xml"; //引入命名空間:using System.Windows.Forms;

            public Config()
            {
                xmlDoc = new XmlDocument();          
                xmlDoc.Load(filePath);
            }
            /// <summary>
            /// 獲取值
            /// </summary>
            /// <param name="strKey"></param>
            /// <returns></returns>
            private string GetXmlValue(string strKey)
            {
                string strResult = "9999"; //找不到匹配的項;
                for (int i = 0; i < xmlDoc.DocumentElement.ChildNodes.Count; i++)
                {
                    if (xmlDoc.DocumentElement.ChildNodes[i].Attributes[0].Value == strKey)
                    {
                        strResult = xmlDoc.DocumentElement.ChildNodes[i].Attributes[1].Value;
                        break;
                    }
                }
                return strResult;
            }
            /// <summary>
            /// 修改值
            /// </summary>
            /// <param name="strKey"></param>
            /// <param name="strValue"></param>
            /// <returns></returns>
            private string SetXmlValue(string strKey,string strValue)
            {
                string strResult = "9999"; //找不到匹配的項;
                for (int i = 0; i < xmlDoc.DocumentElement.ChildNodes.Count; i++)
                {
                    if (xmlDoc.DocumentElement.ChildNodes[i].Attributes[0].Value == strKey)
                    {
                        xmlDoc.DocumentElement.ChildNodes[i].Attributes[1].Value = strValue;
                        strResult = "0"; //修改成功
                        xmlDoc.Save(filePath); //修改完後記得保存o(∩_∩)o
                        break;
                    }
                }
                return strResult;
            }
        }

 

 

 

 

 

-------------------------------------------------------------------------------------------------------------------------------

C#中如何操作XML,對XML進行增、刪、改節點  

增加節點
1.讀取XML文件(加載XML文件)
 XmlDocument doc = new XmlDocument();
 doc.Load("student.xml");
2.查找根節點
 XmlNode xn = doc.SelectSingleNode("student");
3.創建子節點student
 XmlElement node = doc.CreateElement("student");
4.創建節點name、age、gender
 XmlElement name = doc.CreateElement("name");
 name.InnerText = "kunkun";
 XmlElement age = doc.CreateElement("age");
        age.InnerText = "20";
 XmlElement gender = doc.CreateElement("gender");
        gender.InnerText = "男";
5.將創建的節點,添加到二級節點student中
 node.AppendChild(name);
 node.AppendChild(age);
 node.AppendChild(gender);
6.將二級節點添加到根節點中去
 xn.AppendChild(node);
7.重新保存XML文件
 doc.Save("student.xml");

 


修改節點
1.讀取XML文件(加載XML文件)
 XmlDocument doc = new XmlDocument();
 doc.Load("student.xml");
2.查找根節點
 XmlNode xn = doc.SelectSingleNode("student");
3.循環遍歷,找到需要修改的節點,重新賦值
 foreach (XmlNode xn in node.ChildNodes)
        {
            if (xn.ChildNodes[0].InnerText == txtname.Text)
            {
                xn.ChildNodes[0].InnerText = txtname.Text;
                xn.ChildNodes[1].InnerText = txtage.Text;
                xn.ChildNodes[2].InnerText = ddrgender.Text;
            }
        }
4.重新保存XML文件
 doc.Save("student.xml");

 


刪除節點
1.讀取XML文件(加載XML文件)
 XmlDocument doc = new XmlDocument();
 doc.Load("student.xml");
2.查找根節點
 XmlNode xn = doc.SelectSingleNode("student");
3.循環遍歷,找到需要修改的節點,然後刪除
 foreach (XmlNode xn in node.ChildNodes)
        {
            if (xn.ChildNodes[0].InnerText == txtname.Text)
            {
               node.RemoveChild(xn);
            }
        }
4.重新保存XML文件
 doc.Save("student.xml");

 

XML文件格式:
<student>
  <student>
    <name>zhangsan</name>
    <age>18</age>
    <gender>男</gender>
  </student>
  <student>
    <name>lisi</name>
    <age>20</age>
    <gender>女</gender>
  </student>
</student>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章