gpt4 book ai didi

c# - 从 XML 文件中提取内容

转载 作者:行者123 更新时间:2023-11-30 22:37:14 25 4
gpt4 key购买 nike

我有一个使用按钮生成文件的 C# 应用程序。目前,我想使用 C# 从 XML 文件中提取内容并将其作为字符串传递。例如,在我的 XML 文件中,我有一个标签名称。我想使用 c# 从 XML 文件中提取名称。我应该如何去实现它?下面是我目前的示例代码。整个过程必须通过单击按钮来执行。

private void button1_Click(object sender, EventArgs e)
{
XElement xml = XElement.Load("C:\\Windows 7.xml");
IEnumerable<XElement> propertyIDs = xml.Descendants("PropertyId");

foreach (XElement child in xml.Elements())
{
XElement row = child.Element("my:VM_Name");
string test = xml.ToString();
Console.WriteLine(test);
}
}

请访问此链接以查看我的 xml 文件:http://pastebin.com/NKhBb4Zh

最佳答案

我重写了您的示例并将其更改为使用 XmlDocument 类。因为有 my 命名空间,所以我必须添加一个 NameSpaceManager。使用它你甚至可以选择一个特定的节点。

        string url = @"e:\temp\data.xml";

XmlDocument doc = new System.Xml.XmlDocument();
doc.Load(url);
XmlElement docElement = doc.DocumentElement;

/// loop through all childNodes
foreach (XmlNode childNode in docElement.ChildNodes)
{
Console.WriteLine(childNode.Name + ": " + childNode.InnerText);
}

XmlNamespaceManager mgr = new XmlNamespaceManager(doc.NameTable);
mgr.AddNamespace("my", "http://schemas.microsoft.com/office/infopath/2003/myXSD/2011-05-27T03:57:48");

/// use the given XmlNamespaceManager to select a specific element
XmlNode node = docElement.SelectSingleNode("my:VM_DiskSize", mgr);
/// use innerText for node text and value for attributes only
Console.WriteLine("\n" + node.Name + ": " + node.InnerText);

第一个

关于c# - 从 XML 文件中提取内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6591135/

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