gpt4 book ai didi

c# - 将节点字符串解析为 XMLNodeList

转载 作者:行者123 更新时间:2023-11-30 15:06:10 25 4
gpt4 key购买 nike

我很好奇,将一串 xml 节点解析为 XmlNodeList 的最巧妙方法是什么。例如;

string xmlnodestr = "<mynode value1='1' value2='123'>abc</mynode>
<mynode value1='1' value2='123'>abc</mynode>
<mynode value1='1' value2='123'>abc</mynode>";

我可以对列表进行字符串拆分,但那样会很困惑且不合适。

理想情况下,我想要类似的东西;

XmlNodeList xmlnodelist = xmlnodestr.ParseToXmlNodeList();

最佳答案

您可以向 XML 添加一个根,然后使用这种方法:

string xmlnodestr = @"<mynode value1=""1"" value2=""123"">abc</mynode><mynode value1=""1"" value2=""123"">abc</mynode><mynode value1=""1"" value2=""123"">abc</mynode>";
string xmlWithRoot = "<root>" + xmlnodestr + "</root>";
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xmlWithRoot);
XmlNodeList result = xmlDoc.SelectNodes("/root/*");

foreach (XmlNode node in result)
{
Console.WriteLine(node.OuterXml);
}

如果您可以使用 LINQ to XML 这会简单得多,但您不会使用 XmlNodeList:

var xml = XElement.Parse(xmlWithRoot);
foreach (var element in xml.Elements())
{
Console.WriteLine(element);
}

关于c# - 将节点字符串解析为 XMLNodeList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8171187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com