C#读取XML文件简单介绍

开发 后端
这里对C#读取XML文件简单介绍,读取XML是通过创建"XmlNodeReader"对象来实现的,"XmlNodeReader"对象主要是用来可以读取XML的节点数据。

C#读取XML文件:

编译NO2.cs后,执行将产生"data.xml"文件,其中"data.xml"文件的数据结构如下:

  1. <Employees> 
  2. <NO1> 
  3. <Name>Ma Jin Hu</Name> 
  4. <ZIP> 239000 </ZIP> 
  5. <Address>Feng Huang Street</Address> 
  6. <City>Chu Zhou City</City> 
  7. <State> ANHUI </State> 
  8. </NO1> 
  9. <NO2> 
  10. <Name>Wang Tian</Name> 
  11. <ZIP> 239000 </ZIP> 
  12. <Address>Lang Ya Street</Address> 
  13. <City>He Fei City</City> 
  14. <State> ANHUI </State> 
  15. </NO2> 
  16. <NO3> 
  17. <Name>Zou Wen Biao</Name> 
  18. <ZIP> 100000 </ZIP> 
  19. <Address>Sai Di Street</Address> 
  20. <City>Bei Jin City</City> 
  21. <State>Bei Jin</State> 
  22. </NO3> 
  23. </Employees>  

在下面的内容中,我们利用C#读取XML文件,并用ListView组件按照数据结构给显示出来。下图是读取此XML后的运行界面。

要正确读取XML数据,首先要了解XML的结构。根据上面的XML文件,可以知道此XML包含三个数据,下面就来看如何读取这三条数据。

1.装入XML文件,形成数据流。

通过创建一个"XmlDocument"对象,然后利用"load"方法,可以把XML文件装入,具体如下:

  1. XmlDocument doc = new XmlDocument ( ) ;  
  2. // 装入指定的XML文档  
  3. doc.Load ( "C:\\data.xml" ) ;  

2.C#读取XML文件,并显示出来:

读取XML是通过创建"XmlNodeReader"对象来实现的,"XmlNodeReader"对象主要是用来可以读取XML的节点数据。在本文的程序中使用到了一些"XmlNodeReader"的属性,譬如"NodeType"属性,用来判断读取得节点是什么类型。"Value"是节点的值。下面是读取XML文件并显示在ListView中的实现代码,其中listview1是已经创建ListView组件:

  1. while ( reader.Read ( ) )   
  2. {  
  3. //判断当前读取得节点类型  
  4. switch ( reader.NodeType )  
  5. {  
  6. case XmlNodeType.Element :  
  7. s = reader.Name ;  
  8. break ;  
  9. case XmlNodeType.Text :  
  10. if ( s.Equals ( "Name" ) )  
  11. myItem = Listview1.Items.Add ( reader.Value ) ;  
  12. else  
  13. myItem.SubItems.Add ( reader.Value ) ;  
  14. break ;  
  15. }  

【编辑推荐】

  1. C#字符串操作步骤
  2. C#集成开发环境浅析
  3. Visual C# .NET应用程序
  4. C# TimeLabel控件详解
  5. C#复合控件开发技术
责任编辑:佚名 来源: 51cto.com
相关推荐

2009-08-24 18:06:36

源程序代码C#读取XML文件

2009-08-18 16:42:49

C# 操作XML

2009-08-12 15:26:38

C#读取XML文档

2009-08-24 17:46:54

C#创建XML文档

2009-08-03 17:51:43

C#引用类型

2009-08-13 17:36:54

编译C#代码

2009-09-03 09:40:57

C#创建表单

2009-09-01 16:19:57

C# new()约束

2009-08-25 13:38:35

C# Timer组件

2009-08-06 18:15:13

C# SQL Serv

2009-08-07 17:12:07

C# DLL函数

2009-08-20 16:25:59

C# 匿名方法

2009-08-14 16:46:44

C#元数据

2009-08-10 16:19:37

C#冒泡排序

2009-08-21 17:55:52

C#复合控件

2009-08-27 10:19:22

C#匿名类型

2009-08-07 17:41:40

C#预处理

2009-08-14 17:27:56

C#方法参数

2009-08-06 14:53:41

C# User类

2009-08-18 17:37:57

C#固定指针
点赞
收藏

51CTO技术栈公众号