[英]Create element in xml document
我開發了一個示例應用程序來創建xml文檔,並且已經創建了xml文檔並保存了xml。 該應用程序仍在運行,但是我刪除了該xml,現在嘗試使用appln.xml創建新的xml。我遇到了“此文檔已具有'documentelement'節點”的問題。
if (File.Exists(AppPath) == false)
{
root = doc.CreateElement("LicenseDetails");
rootnode = doc.CreateElement("License");
Login = doc.CreateElement("Login_Name");
Login.InnerText = "KSC";
rootnode.AppendChild(Login);
root.AppendChild(rootnode);
doc.AppendChild(root);
doc.Save(AppPath);
}
我可以很容易地在現有xml中附加一個節點,如果我的xml被刪除,應用程序必須使用相同的標簽創建一個新的xml,
問題是即使刪除XML,您使用的doc元素也與以前相同。 因此,當您嘗試將根元素添加到doc元素時,將引發異常。 可能的解決方案如下:
例如:
XmlDocument doc;
XmlElement root;
XmlElement rootnode;
XmlElement Login;
if (File.Exists(@"C:\Test.xml") == false)
{
doc = new XmlDocument();
root = doc.CreateElement("LicenseDetails");
rootnode = doc.CreateElement("License");
Login = doc.CreateElement("Login_Name");
Login.InnerText = "KSC";
rootnode.AppendChild(Login);
root.AppendChild(rootnode);
doc.AppendChild(root);
doc.Save(@"C:\Test.xml");
}
因此,當您再次進入該程序塊時,它將毫無問題地執行。
使用DocumentElement屬性-返回Xml文檔的根元素。
XmlDocument dom=new XmlDocument();
dom.Load("file.xml");
XmlElement ele1=dom.createElement("A");
XmlElement ele2=dom.createElement("B");
ele1.AppendChild(ele2);
dom.DocumentElement.AppendChild(ele1);
dom.Save("file.xml");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.