使用WriteXml方法可直接将DataTable导出为XML文件,示例代码创建包含用户信息的DataTable并调用WriteXml生成users.xml文件,输出结果包含数据与默认DocumentElement根节点。

在C#中将DataTable导出为XML文件非常简单,.NET框架本身就提供了直接支持。你不需要手动拼接XML字符串,只需调用DataTable.WriteXml()方法即可快速完成导出操作。
这是最直接的方式,DataTable类内置了WriteXml方法,可以将数据和结构一并保存为XML格式。
示例代码:
using System;
using System.Data;
// 创建一个示例DataTable
DataTable table = new DataTable("Users");
table.Columns.Add("ID", typeof(int));
table.Columns.Add("Name", typeof(string));
table.Columns.Add("Age", typeof(int));
// 添加几行数据
table.Rows.Add(1, "张三", 25);
table.Rows.Add(2, "李四", 30);
table.Rows.Add(3, "王五", 28);
// 导出为XML文件
table.WriteXml("users.xml");
执行后会生成名为 users.xml 的文件,内容类似:
<?xml version="1.0" standalone="true"?>
<DocumentElement>
<Users>
<ID>1</ID>
<Name>张三</Name>
<Age>25</Age>
</Users>
<Users>
<ID>2</ID>
<Name>李四</Name>
<Age>30</Age>
</Users>
<Users>
<ID>3</ID>
<Name>王五</Name>
<Age>28</Age>
</Users>
</DocumentElement>
如果你希望同时导出表结构(Schema),比如字段类型、主键等信息,可以使用 WriteXml 配合 WriteXmlSchema,或者直接使用重载方法指定模式。
导出带Schema的XML:
// 同时写入数据和结构
table.WriteXml("users_data.xml");
table.WriteXmlSchema("users_schema.xsd");
也可以将Schema嵌入到XML中:
using (var writer = new System.IO.StringWriter()) {
table.WriteXml(writer, XmlWriteMode.WriteSchema);
string xmlWithSchema = writer.ToString();
System.IO.File.WriteAllText("users_with_schema.xml", xmlWithSchema);
}
默认情况下,XML的根节点是DocumentElement,你可以通过设置DataSet来更改根节点名称。
DataSet ds = new DataSet("MyData");
ds.Tables.Add(table);
ds.WriteXml("custom_root.xml");
此时XML的根节点就会变成 <MyData>,更清晰易读。
导出过程中需要注意以下几点:
UnauthorizedAccessException
DataTable中有空值(null),XML中对应标签不会生成内容,但标签仍存在基本上就这些。利用WriteXml方法,几行代码就能完成DataTable到XML的导出,简单高效,适合配置导出、数据备份等场景。
以上就是C#怎么将DataTable导出为XML文件_C#实现DataTable数据导出XML格式的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号