现有XML格式:
<Book>
<StyleXML>
<text>a</text>
<text>b</text>
<text>e</text>
</StyleXML>
</Book>
问题:如何在 b 与 e 之间插入数据 c
变成:
<Book>
<StyleXML>
<text>a</text>
<text>b</text>
<text>c</text>
<text>d</text>
</StyleXML>
</Book>
本人小白,刚接触XML,望各位大佬们帮帮忙!
https://blog.csdn.net/qq_36074218/article/details/85164682
这个要先获取xml的节点,先获取父节点,然后是子节点,然后对应的插入你要的节点。你可以按照上面那个老马专家的回答来参考。
使用System.Xml.Linq,比较好处理:
XDocument doc = XDocument.Parse(
@"<Book>
<StyleXML>
<text>a</text>
<text>b</text>
<text>e</text>
</StyleXML>
</Book>");
var styleNode = doc.Root.Element("StyleXML");
var textNodes = styleNode.Elements("text");
textNodes.FirstOrDefault(item => item.Value == "b")
?.AddAfterSelf(XElement.Parse("<text>c</text>"));
Console.WriteLine(doc.ToString());
doc.Save("output.xml");