gpt4 book ai didi

c# - 如何在 C# 中读取 XML 文档对象?

转载 作者:数据小太阳 更新时间:2023-10-29 02:27:58 24 4
gpt4 key购买 nike

在可视化 C# 项目中,我想将 XML 文档对象传递给方法。在那个方法中,我应该读取存储在 XML 文档对象中的值。无需创建 XML 文件。

感谢大家的回复,我终于得到了我的代码。

    //use following code when assign values to XMlDocument
XMLOBJECT()
{
XmlDocument xmlEmployee = new XmlDocument();
XmlElement xmlRoot = xmlEmployee.CreateElement("HR");
XmlElement xmlEmployees = xmlEmployee.CreateElement("Employee");
xmlEmployees.SetAttribute("Name", "XYZ");
xmlEmployees.SetAttribute("DOB", "12/12/2010");
xmlRoot.AppendChild(xmlEmployees);
xmlEmployee.AppendChild(xmlRoot);
Employee Emp=new EMployee();
Emp.retriveXMl(xmlEmployee);
}

在上面的代码中,我们创建了 XML 对象,现在我们可以传递 Xml 对象了。

//Use Following code when assign values to Employee Object
class employee
{
retrivelXMl(XMLDOCUMENT xmlEmployeeobject)
{
string NAME;
int DOB;
XmlNodeList xmlEmployees = xmlEmployeeobject.SelectNodes("//Employee");
foreach (XmlElement Employee in xmlEmployees)
{
NAME = Employee.GetAttribute("Name"));
DOB = int.parse(Employee.GetAttribute("DOB"));
}
}
}

最佳答案

您可以使用 XmlNodeReader 访问您的 XmlDocument 中的元素。

根据您要对 XmlDocument 的内容执行的操作,XmlNodeReader 可能不够用。根据您提供的少量信息,我添加了一些通用代码,展示了如何使用 XmlNodeReader 访问 XmlDocument

如果您在问题中添加更多详细信息,说明您究竟想达到什么目的,我们或许能够为您提供更符合您需求的答案。

public void WriteXmlDocument(XmlDocument document)
{
if (document == null)
{
throw new ArgumentNullException("document");
}

using (XmlNodeReader nodeReader = new XmlNodeReader(document))
{
while (nodeReader.Read())
{
Console.WriteLine(nodeReader.Value);
}
};
}

-- 编辑--

详细说明 XmlNodeReader 的可能性。您还可以选择特定节点并对其进行处理。

使用,下面你还可以访问特定的节点值。

XmlNode specificNode = document.SelectSingleNode("/NodeName/ChildNodeName");

if (specificNode != null)
{
XmlNodeReader specificNodeReader = new XmlNodeReader(specificNode);

while (specificNodeReader.Read())
{
Console.WriteLine(specificNodeReader.Value);
}
}

示例将这些节点值写入控制台,但是,您可以将其更改为将值写入变量等。灵 active 就在那里。

关于c# - 如何在 C# 中读取 XML 文档对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4032636/

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