C# 在XML VB或C中追加新元素#
如果这个问题对您来说太简单,我很抱歉,因为我刚刚开始学习XML是如何工作的。我试图做的是在App/Library中添加一个新元素,例如,我从这个开始C# 在XML VB或C中追加新元素#,c#,xml,wpf,vb.net,C#,Xml,Wpf,Vb.net,如果这个问题对您来说太简单,我很抱歉,因为我刚刚开始学习XML是如何工作的。我试图做的是在App/Library中添加一个新元素,例如,我从这个开始 <?xml version="1.0" encoding="utf-8"?> <App> <Library> <Count>100</Count> <Track> <TrackID>1</Trac
<?xml version="1.0" encoding="utf-8"?>
<App>
<Library>
<Count>100</Count>
<Track>
<TrackID>1</TrackID>
<Name>New York</Name>
<Artist>Snow Patrol</Name>
</Track>
</Library>
</App>
100
1.
纽约
雪地巡逻队
我试图做的是在现有XML中添加另一个曲目
<Track>
<TrackID>2</TrackID>
<Name>Chasing Cars</Name>
<Artist>Snow Patrol</Name>
</Track>
2.
追逐
雪地巡逻队
在.NET中有几种处理xml操作的方法。较旧的样式使用System.Xml.XmlDocument或使用System.Xml.Linq.XDocument方法
下面是一个关于如何使用XmlDocument的示例:
var xml=“Baz”
下面是一个关于如何使用XDocument(更简单)实现的示例:
var xml=“Baz”;
var xdoc=XDocument.Parse(xml)//将原始xml字符串加载到Linq XDocument对象中
xdoc.Root.Add(新的元素(“条”,“条2”))//将Bar2添加到foo(它是文档的根目录)
下面是一个运行示例:
var doc = new XmlDocument();
doc.LoadXml(xml); //Load up the original xml string into XmlDocument object
var fooNode = doc.SelectSingleNode("//foo"); //use xpath to get to the top level foo element
var newBar = doc.CreateElement("bar"); //Create a new bar element and assign it's inner text
newBar.InnerText = "Baz2";
fooNode.AppendChild(newBar); //append the newly created bar element to foo
var xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?><foo><bar>Baz</bar></foo>";
var xdoc = XDocument.Parse(xml); //Load up the original xml string into Linq XDocument object
xdoc.Root.Add(new XElement("bar", "Bar2")); //Add <bar>Bar2</bar> to foo (which is root of the document)