Unterschätzen Sie diesen Vorgang nicht, er ist tatsächlich nicht einfach. Bitte beachten Sie, dass wir den Namen des Elements ersetzen, nicht seinen Wert. Der Inhalt von
XML ist ein DOM-Baum im Speicher. Um ein Element zu ersetzen, müssen Sie tatsächlich ein neues Element erstellen und alle untergeordneten Elemente des ursprünglichen Elements kopieren. Verwenden Sie „ReplaceWith“ in LINQ TO XML, um
using System; using System.Linq; using System.Xml.Linq; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { XDocument doc = new XDocument( new XElement("Tables" , new XElement("Table" , new XElement("Name", "Orders") , new XElement("Owner", "chenxizhang")) , new XElement("Table" , new XElement("Name", "Customers") , new XElement("Owner", "Allen")) )); Console.WriteLine("原始的XML内容:"); Console.WriteLine(doc); //改变Tables元素名称为Items Console.WriteLine("改变了根元素之后显示的效果:"); XElement root = doc.Element("Tables"); root.ReplaceWith(new XElement("Items", root.Elements("Table"))); Console.WriteLine(doc); //改变Table元素名称为Item Console.WriteLine("改变了子元素之后显示的效果:"); foreach (var item in doc.Elements("Items").Descendants().ToList())//这里一定要先ToList { item.ReplaceWith(new XElement("Item", item.Descendants())); } Console.WriteLine(doc); Console.Read(); } } }
Das obige ist der detaillierte Inhalt vonAusführliche Erklärung zum Ersetzen von Elementnamen in XML-Dokumenten (Bild). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!