开发者

Update value in xml file

I have a xml-file:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<root>
  <level>
    <node1开发者_StackOverflow中文版 />
    <node2 />
    <node3 />
  </level>
</root>

What is the simplest way to insert values in node1, node2, node3 ?

C#, Visual Studio 2005


Here you go:

XmlDocument xmldoc = new XmlDocument();
xmldoc.LoadXml(@"
    <root>
        <level>
            <node1 />
            <node2 />
            <node3 />
        </level>
    </root>");
XmlElement node1 = xmldoc.SelectSingleNode("/root/level/node1") as XmlElement;
if (node1 != null)
{
    node1.InnerText = "something"; // if you want a text
    node1.SetAttribute("attr", "value"); // if you want an attribute
    node1.AppendChild(xmldoc.CreateElement("subnode1")); // if you want a subnode
}


//Here is the variable with which you assign a new value to the attribute
string newValue = string.Empty 
XmlDocument xmlDoc = new XmlDocument();
    
xmlDoc.Load(xmlFile);
    
XmlNode node = xmlDoc.SelectSingleNode("Root/Node/Element");
node.Attributes[0].Value = newValue;
    
xmlDoc.Save(xmlFile);

Credit goes to Padrino.

How to change XML Attribute


XElement t = XElement.Load("filePath");
t.Element("level").Element("node1").Value = "";
t.Element("level").Element("node2").Value = "";
t.Element("level").Element("node3").Value = "";
t.Save("filePath");


Use AppendChild method to inser a child inside a node.

yournode.AppendChild(ChildNode);

link text

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜