public void GetDataFromXml()
{
ArrayList headersubList = new ArrayList();
//获取当前XML文档的根 一级
XmlNode oNode = m_oDom.DocumentElement;
//获取根节点的所有子节点列表
XmlNodeList oList = oNode.ChildNodes;
//标记当前节点
XmlNode oCurrentNode;
//遍历所有二级节点
for (int i = 0; i < oList.Count; i++)
{
//二级
oCurrentNode = oList[i];
//检测当前节点的名称,节点的值是否与已知匹配
if (oCurrentNode.Name.ToLower().Equals("store"))
{
//检测是否有子节点 三级
if (oCurrentNode.HasChildNodes)
{
Console.WriteLine(oCurrentNode.ChildNodes.Count);
//遍历当前节点的所有子节点
for (int n = 0; n < oCurrentNode.ChildNodes.Count; n++)
{
//检测当前节点的子节点名称是否与已知匹配
if (oCurrentNode.ChildNodes[n].Name.ToLower() == "sale")
{
//获取该节点所有属性,以供查询
XmlNamedNodeMap oMap = oCurrentNode.ChildNodes[n].Attributes;
Hashtable headItem = new Hashtable();
headItem.Add("Id", oCurrentNode.Attributes.GetNamedItem("Id").Value);
headItem.Add("Name", oCurrentNode.Attributes.GetNamedItem("Name").Value);
headItem.Add("OrderNo", oMap.GetNamedItem("OrderNo").Value);
headItem.Add("Qty", oMap.GetNamedItem("Qty").Value);
headersubList.Add(headItem);
Console.WriteLine(oCurrentNode.Attributes.GetNamedItem("Id").Value);
Console.WriteLine(oCurrentNode.Attributes.GetNamedItem("Name").Value);
Console.WriteLine(oMap.GetNamedItem("OrderNo").Value);
Console.WriteLine(oMap.GetNamedItem("Qty").Value);
Console.ReadLine();
}
}
}
}
}
}
分享到:
相关推荐
给定以下XML结构文件(files.xml): <FileSystem> < DriverC > ”MSDOS622”> ...</Dir> ”MSDOS.SYS” ></File> ” IO.SYS” ></File> </DriverC> ...可以考虑使用路径递归遍历技术XML子节点信息。
在C#编程中,遍历XML文档通常是为了提取或处理其中的数据。在这个示例中,我们看到一个Windows应用程序,它包含一个名为`Form1`的窗体,该窗体有两个按钮(`button1`和`button2`)以及一个`XmlDocument`对象,用于...
本篇文章将深入探讨如何使用C#来遍历XML文件中的各个节点内容。 首先,要遍历XML文件,我们需要使用.NET Framework提供的System.Xml命名空间中的类。最常用的是XmlDocument和XmlNode,它们提供了读取和操作XML文档...
本篇文章将详细讲解如何利用C#中的`XmlDocument`类遍历XML文档的所有节点,包括节点名称、类型以及其属性。 首先,我们需要了解XML文档的基本结构,XML文档由元素(Element)、属性(Attribute)、文本(Text)等...
中国XML论坛--遍历XML代码(C#).htm中国XML论坛--遍历XML代码(C#).htm中国XML论坛--遍历XML代码(C#).htm中国XML论坛--遍历XML代码(C#).htm中国XML论坛--遍历XML代码(C#).htm中国XML论坛--遍历XML代码(C#)...
当我们需要在C#项目中处理XML文件时,有多种方法可以实现,而高效地读取和遍历XML文件对于优化程序性能至关重要。 标题"用C#快速读取XML文件,并遍历"所涉及的核心知识点包括: 1. **System.Xml命名空间**:C#中...
本话题主要关注如何使用C#递归遍历XML菜单,这是一个常见的需求,例如在构建具有层级结构的网站导航或应用菜单时。以下将详细介绍这一主题。 首先,XML(Extensible Markup Language)是一种用于存储和传输结构化...
在C#编程中,当你需要处理文件系统操作,如遍历文件夹并将其内容结构化存储时,XML是一种常见的选择。XML(可扩展标记语言)提供了数据的结构化表示,便于存储、检索和处理。本示例将详细介绍如何在Windows Forms...
下面是一个基本示例,展示了如何遍历XML文档中指定节点的所有子元素: ```csharp using System; using System.Linq; using System.Xml.Linq; public class Program { public static void Main() { string xml...
总结起来,使用C#递归遍历多层目录并将信息写入XML是一种常见的任务,它结合了`DirectoryInfo`类的文件系统操作和XML的结构化数据存储。通过这样的方法,我们可以高效地管理和处理大量文件和目录数据。
C#对XML文件进行增删查改,并提供了遍历XMl文件信息的方法包括1.生成xml文件、2.遍历xml文件的节点信息、3.修改xml文件的节点信息、4.向xml文件添加节点信息、5.删除指定xml文件的节点信息、6、嵌套循环遍历xml信息...
本文将深入探讨如何使用C# WinForm技术来遍历XML文件,并将其内容加载到树形控件中。 首先,我们需要了解XML的基本结构。XML文档由元素、属性、文本节点等组成,其中元素是XML文档的核心,可以通过层级关系形成一棵...
在C#编程中,XML文件常用于存储结构化数据,如程序配置、游戏存档或数据交换等场景。本文将详细讲解如何使用C#进行XML文件的读写操作,特别是处理多层节点的情况。 首先,我们需要了解.NET Framework提供的System....
C#作为一种流行的面向对象编程语言,提供了丰富的库和API来处理XML数据,包括创建、读取、更新和保存XML文档。本文将深入探讨如何在C#中通过循环生成XML文档,这一过程对于批量处理数据或动态生成配置文件等场景尤为...
通过创建`XmlReader`实例,我们可以逐个节点遍历XML文件,每次读取一个节点时,解析数据并直接插入数据库。这种方法适用于大文件,防止一次性加载整个文件到内存中。 - 示例代码: ```csharp using (var reader =...
- 遍历XML:通过`XmlNode`接口遍历XML树,访问和修改元素、属性。 - 写入XML:使用`XmlNode.AppendChild()`、`XmlNode.RemoveChild()`等方法添加、删除节点,然后用`XmlDocument.Save()`保存更改。 4. **使用LINQ...
- 使用`XmlNodeList` 和 `XmlNode` 对象遍历XML结构。例如,获取所有`<item>` 元素: ```csharp XmlNodeList itemList = xmlDoc.SelectNodes("//item"); foreach (XmlNode itemNode in itemList) { // 处理每...
最常用的是XmlDocument类,它提供了加载XML文件、遍历XML树以及获取或设置节点值的方法。例如,使用Load方法可以加载XML文件,然后通过XmlNode类的SelectNodes或SelectSingleNode方法查询XML数据。另一种常见的方法...
在通讯录导出时,我们遍历XML文件中的所有联系人节点,将它们转换成Excel表格的行,然后写入到一个新的Excel工作表中。 此外,考虑到用户体验,我们还需要设计友好的用户界面。C#的Windows Forms或WPF提供了丰富的...
- **遍历XML数据**:根据XML结构,遍历所有需要的数据节点,将数据存储在适当的数据结构(如List或数组)中。 - **创建Excel工作簿**:在Excel应用中创建新工作簿。 - **创建工作表和格式化**:添加工作表,设置...