C#中DataTable转XML最直接方式是调用WriteXml方法,支持字符串、文件、流输出,可保留结构与类型;配合XmlWriter可格式化缩进,传入XmlWriteMode.WriteSchema可同时导出Schema。
在C#中,将DataTable转换为XML最直接、标准的方式是调用其内置的WriteXml方法。它无需额外引用,支持多种输出形式(字符串、文件、流),且能完整保留结构、数据类型和关系信息。
使用WriteXml写入字符串(推荐)
若需获取XML字符串而非保存到文件,可配合StringWriter和XmlWriter实现:
- 创建
StringWriter和XmlWriter,指定格式化选项(如缩进)提升可读性 - 调用
dataTable.WriteXml(xmlWriter) - 从
StringWriter中获取结果字符串
示例代码:
var sw = new StringWriter();
using (var xw = XmlWriter.Create(sw, new XmlWriterSettings { Indent = true }))
{
dataTable.WriteXml(xw);
}
string xmlString = sw.ToString(); // 得到格式化的XML字符串
直接写入文件或流
适合导出场景,操作更简洁: