C#讀取xml的方法


最近在用C#語言開發項目的時候,客戶要求在客戶端記住登錄的用戶名,於是想到了用Xml的形式保存和讀取登陸過的用戶名的方法來實現。

過程如下

1. 首先,根據我的需求,只需要記住用戶名即可,所有我設計的xml文件的格式為:

****************************************************************

<?xml version="1.0" encoding="gb2312"?>
<userID>
  <user nameSeq="1" values="username1" />

  <user nameSeq="2" values="username2" />
</userID>

****************************************************************

是不是很簡單,就一個節點而已。

下面就以這個xml為例說明一下取得和寫入的方法。

2. 寫入xml的代碼。

private void setUserName(String user_name){

                  XmlDocument xmlDoc = new XmlDocument();//聲明讀取xml的對象
                    xmlDoc.Load(XML_FILE_DIR);//獲取xml文件,XML_FILE_DIR為xml文件的存放路徑,我在這里定義的是常量。
                    XmlNode root = xmlDoc.SelectSingleNode("userID");
                    XmlNode xn = xmlDoc.SelectSingleNode("user");
                    XmlElement xe1 = xmlDoc.CreateElement("user");//創建一個<userID>節點
                    xe1.SetAttribute("nameSeq", (userList.Count + 1).ToString()); //給節點的nameSeq賦值
                    xe1.SetAttribute("values", cbxYhid.Text);                                //給節點的values賦值
                    root.AppendChild(xe1);//添加節點
                    xmlDoc.Save(XML_FILE_DIR);//保存

}

這樣就可以忘xml中添加一個節點了,當然也可以用循環或者其他的方法一次往xml中添加一個以上的節點,然后保存,根據需求自由發揮了。

3. 讀取xml文件。

private List<String> getUserName()
        {
            try
            {
                XmlDocument xmlDoc = new XmlDocument();
                xmlDoc.Load(XML_FILE_DIR);
                XmlNode xn = xmlDoc.SelectSingleNode("userID");
                XmlNodeList xnl = xn.ChildNodes;
                foreach (XmlNode xnf in xnl)
                {
                    XmlElement xe = (XmlElement)xnf;
                    String name = xe.GetAttribute("values");
                    if (!String.IsNullOrEmpty(name))
                    {
                        userList.Add(xe.GetAttribute("values"));
                    }
                }
                return userList;
            }
            catch (Exception)
            {
                return null;
            }            
        }

代碼如上,我是讀出來放在了list當中的,也可以按照實際的需求自由發揮。

 

程序員的心情:

每天記錄一點點,再堅持一天,生活如此,編程亦如此吧。

最近喜歡上了納蘭性德的詞,喜歡他的多愁善感,喜歡那種凄美的感覺。

《木蘭辭 擬古決絕詞柬友》 --納蘭性德

人生若只如初見,何事秋風悲畫扇。
等閑變卻故人心,卻道故人心易變。
驪山語罷清宵半,夜雨霖鈴終不怨。 
何如薄幸錦衣郎,比翼連枝當日願。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM