C# 如何从xml文件中加载数据到DataSet

来源:这里教程网 时间:2026-02-21 17:29:13 作者:

在C#中,可以很方便地从XML文件加载数据到

DataSet
。只要XML文件结构清晰,符合基本的表格格式(有行、列信息),
DataSet.ReadXml()
方法就能自动解析并填充数据。

使用 ReadXml() 从XML加载数据

DataSet 提供了 ReadXml() 方法,可以直接读取XML文件内容,并将其映射为表和行。以下是一个完整示例:

DataSet dataSet = new DataSet();
dataSet.ReadXml("data.xml"); // 指定XML文件路径

执行后,DataSet会根据XML结构自动创建DataTable,并填充数据。例如,如果有如下XML文件:

<?xml version="1.0" standalone="yes"?>
<DocumentElement>
  <Person>
    <ID>1</ID>
    <Name>张三</Name>
    <Age>25</Age>
  </Person>
  <Person>
    <ID>2</ID>
    <Name>李四</Name>
    <Age>30</Age>
  </Person>
</DocumentElement>

加载后,DataSet中会自动生成一个名为 Person 的表,包含 ID、Name、Age 三列,以及两行数据。

支持的XML格式说明

DataSet能识别多种XML结构,但推荐使用带有架构信息或标准行结构的格式:

XML根节点下包含多个同名元素(视为行) 每个元素的子节点作为字段列 也可包含内联XSD schema,DataSet会据此创建强类型列

如果XML没有schema,DataSet会尝试推断数据类型(通常默认为字符串,部分数值可被识别)。

常见操作建议

确保XML文件路径正确,避免
FileNotFoundException
可先用
File.Exists()
判断文件是否存在
若XML结构复杂或嵌套太深,建议手动解析或使用
XmlReader
加载后可通过
dataSet.Tables[0]
访问具体表

基本上就这些。只要XML格式规范,用

ReadXml()
加载到DataSet非常简单直接。不复杂但容易忽略的是结构匹配问题——确保每条记录标签一致,字段命名清晰。基本上就这些。

相关推荐