看板 C_Sharp 關於我們 聯絡資訊
hi 小弟在此有個 xml 使用上的問題 先說一下 xml 的結構大致如下: <?xml version="1.0" encoding="utf-8"?> <TITLE> <USERS> </USERS> </TITLE> 上面這個 xml 檔案我已經開啟完成了... 先說明一下我的用意在 <USERS> ... </USERS> 裡我會在擺上 <USER name="aaa"/> <USER name="bbb"/> 這些資料... 我想在讀取這個 xml 的時候判斷 USER name="aaa" 是否有存在... 如果不存在就重新建立... 我的語法如下: XmlElement xmlElement = (XmlElement)xmlDoc.SelectSingleNode(string.Format("TITLE/USERS/USER[@name='{0}']", "aaa")); if (xmlElement == null) { xmlElement = xmlDoc.CreateElement("USER"); xmlElement.SetAttribute("name", "aaa"); xmlDoc.LastChild.AppendChild(xmlElement); xmlDoc.Save(XMLFILE); } 這樣的結果會產生成 <?xml version="1.0" encoding="utf-8"?> <TITLE> <USERS> </USERS> <USER name="aaa" /> </TITLE> 跟我要的結果不同,如下: <?xml version="1.0" encoding="utf-8"?> <TITLE> <USERS> <USER name="aaa"/> </USERS> </TITLE> 請問我該如何修正程式可以得到我要的結果呢? 謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.192.170.213
totte:XmlNodeList nodes = xmlDoc.GetElementsByTagName("USERS") 01/04 13:09
totte:nodes[nodes.Count - 1].AppendChild(xmlElement); 01/04 13:10