C#如何将元素添加到xml文件中

时间:2011-12-05 08:05:42

标签: c# .net xml

我正在为我的应用程序使用WinForms .NET 2.0。以前,我使用.NET 4.0以这种方式向现有XML文件添加元素:

        XDocument doc = XDocument.Load(spath);
        XElement root = new XElement("Snippet");
        root.Add(new XAttribute("name", name.Text));
        root.Add(new XElement("SnippetCode", code.Text));
        doc.Element("Snippets").Add(root);
        doc.Save(spath);

spath是XML文件的路径。我无法将此代码降级为.NET 2.0,因为语法令人困惑,有人可以帮助我吗?我正在尝试添加一个带有属性和元素的元素:

<Snippet name="snippet name">
    <SnippetCode>
    code goes here
    </SnippetCode>
  </Snippet>

1 个答案:

答案 0 :(得分:2)

试试这段代码:

XmlDocument doc = new XmlDocument();
doc.Load(spath);
XmlNode snippet = doc.CreateNode(XmlNodeType.Element, "Snippet", null);

XmlAttribute att = doc.CreateAttribute("name");
att.Value = name.Text;
snippet.Attributes.Append(att);

XmlNode snippetCode = doc.CreateNode(XmlNodeType.Element, "SnippetCode", null);
snippetCode.InnerText = code.Text;

snippet.AppendChild(snippetCode);

doc.SelectSingleNode("//Snippets").AppendChild(snippet);