--硬盘Xml文件存储路径:d:\xmlFile\Testxml.xml

xml文件内容:

<Root>
<Tab>
<ID>245575913</ID>
<name>Tab</name>
<Tabs>
<Tab2>
<ID>1</ID>
<TabID>245575913</TabID>
<Name2>ID</Name2>
</Tab2>
<Tab2>
<ID>2</ID>
<TabID>245575913</TabID>
<Name2>name</Name2>
</Tab2>
</Tabs>
</Tab>
<Tab>
<ID>277576027</ID>
<name>Tab2</name>
<Tabs>
<Tab2>
<ID>3</ID>
<TabID>277576027</TabID>
<Name2>ID</Name2>
</Tab2>
<Tab2>
<ID>4</ID>
<TabID>277576027</TabID>
<Name2>Name2</Name2>
</Tab2>
<Tab2>
<ID>5</ID>
<TabID>277576027</TabID>
<Name2>TabID</Name2>
</Tab2>
</Tabs>
</Tab>
</Root>

----打开Visual Studio—创建项目—选择【控制台应用程序】

#region Using Directives
using System;
using System.Data;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
#endregion namespace TestReadingxml
{
class Program
{
static void Main(string[] args)
{
DataSet thisDataSet = new DataSet();
thisDataSet.ReadXml(@"d:\xmlFile\Testxml.xml");
DataRelation custRel = thisDataSet.Relations.Add("Cust",thisDataSet.Tables[0].Columns["ID"],thisDataSet.Tables[2].Columns["TabID"]);
foreach (DataRow custRow in thisDataSet.Tables["Tab"].Rows)
{
Console.WriteLine("ID:{0} \t Name:{1}",custRow["ID"],custRow["Name"]);
foreach (DataRow detailRow in custRow.GetChildRows(custRel))
{
Console.WriteLine("\t ID:{0}\tTabID:{1}\t Name2:{2};\t{3}",detailRow["ID"],detailRow["TabID"],detailRow[2],detailRow.GetParentRow(custRel)["ID"]);
}
}
Console.WriteLine("Table created by ChildTable:{0}",thisDataSet.Tables[2].TableName);
Console.WriteLine("Table created by ReadXml is called {0}",thisDataSet.Tables[0].TableName);
Console.Write("Program finished,press Enter/Return to continue:");
Console.ReadKey();
}
}
}

--按F5运行结果:

C#读取XML文件的更多相关文章

  1. C#中常用的几种读取XML文件的方法

    1.C#中常用的几种读取XML文件的方法:http://blog.csdn.net/tiemufeng1122/article/details/6723764/

  2. 读取xml文件报错:Invalid byte 2 of 2-byte UTF-8 sequence。

    程序读取xml文件后,系统报“Invalid byte 2 of 2-byte UTF-8 sequence”错误,如何解决呢? 1.程序解析xml的时候,出现Invalid byte 2 of 2- ...

  3. C#读取XML文件的基类实现

    刚到新单位,学习他们的源代码,代码里读写系统配置文件的XML代码比较老套,直接写在一个系统配置类里,没有进行类的拆分,造成类很庞大,同时,操作XML的读写操作都是使用SetAttribute和node ...

  4. C#读取XML文件的方法

    先写一个xml文件: <?xml version="1.0" encoding="utf-8" ?> <bookste> <!-- ...

  5. Spring相关:jdom学习:读取xml文件

    云课堂马士兵的spring2.5课程中提到的 用JDOM读取XML文件需先用org.jdom.input.SAXBuilder对象的build()方法创建Document对象,然后用Document类 ...

  6. 在C#中创建和读取XML文件

    1.创建简单的XML文件 为了便于测试,我们首先创建控制台应用程序,项目命名为CreateXml,Program.cs代码如下: 这样会在C盘根目录下创建data2.xml文件,文件内容为 using ...

  7. Java获取路径方法&相对路径读取xml文件方法

    (1).request.getRealPath("/");//不推荐使用获取工程的根路径 (2).request.getRealPath(request.getRequestURI ...

  8. python读取xml文件

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...

  9. JAVA读取XML文件数据

    XML文档内容如下: <?xml version="1.0" encoding="UTF-8"?> <root> <field t ...

  10. java 读取XML文件作为配置文件

    首先,贴上自己的实例: XML文件:NewFile.xml(该文件与src目录同级) <?xml version="1.0" encoding="UTF-8&quo ...

随机推荐

  1. Mybatis批量添加对象List

    1.对应的xml文件: <!--批量添加--><insert id="insertStandardItemInfo" parameterType="ha ...

  2. 实用的Scala泛函编程

    既然谈到实用编程,就应该不单止了解试试一个新的编程语言那么简单了,最好通过实际的开发项目实例来演示如何编程.心目中已经有了一些设想:想用Scala泛函编程搞一个开源的数据平台应用系统,也就是在云平台P ...

  3. mysql易混淆知识点

    1,join 和 union join连接属于表之间的水平操作,而union 是表之间的垂直操作.简单讲就是水平操作主要是为了获得列数据,垂直操作是为了获得行数据 cross  join        ...

  4. 十大Intellij IDEA快捷键

    转载:http://blog.csdn.net/dc_726/article/details/42784275 Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一 ...

  5. SQL语句操作数据-------开启旅程路线喽!

    岁月,是一首诗,一首蕴含丰富哲理的诗,岁月是一峰骆驼,驮着无数人的梦想. 一.SQL的简介 SQL的全称是“结构化查询语言”(Structure Query Language),SQL语言是针对数据库 ...

  6. 神奇的Bank系统之旅哦

        奋斗不能等待,我们不能等到垂暮之年再去“全力以赴”.让我们从现在开始,为理想而努力,为人生而拼搏.精诚所至,金石为开,相信奋斗会让我们的青春之花绽放得更加绚烂,让我们的人生之路走下来不留遗憾. ...

  7. java内存模型-重排序

    数据依赖性 如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性.数据依赖分下列三种类型: 名称 代码示例 说明 写后读 a = 1;b = a; 写一个变量之 ...

  8. 数据库热备之SQLServer的数据库镜像实施笔记

    / 最初在为公司设计SQLServer数据库镜像的时候,首先考虑的是高可用性(三台计算机,一台见证服务器,一台做主数据库,一台做镜像) 在虚拟机环境下部署成功,一切都是那么的完美.故障转移3秒之内就可 ...

  9. 解决MVC4发布在IIS7后,路径无法访问.apk文件的解决方法

    随着智能手机的普及,越来越多的人使用手机上网,很多网站也应手机上网的需要推出了网站客户端,.apk文件就是安卓(Android)的应用程序后缀名,默认情况下,使用IIS作为Web服务器的无法下载此文件 ...

  10. C++之虚函数的作用和使用方法

    在同一类中是不能定义两个名字相同.参数个数和类型都相同的函数的,否则就是“重复定义”.但是在类的继承层次结构中,在不同的层次中可以出现名字相同.参数个数和类型都相同而功能不同的函数.例如在例12.1( ...