C#中将DataTable转换成CSV文件的方法

DataTable用于在.net项目中,用于缓存数据,DataTable表示内存中数据的一个表。CSV文件最早用在简单的数据库里,由于其格式简单,并具备很强的开放性,所以起初被扫图家用作自己图集的标记。CSV文件是个纯文本文件,每一行表示一张图片的许多属性。

在.net项目中运用C#将DataTable转化为CSV文件,现在提供一个较为通用的方法,具体代码如下:

/// <summary>
/// 将DataTable转换成CSV文件
/// </summary>
/// <param name="dt">DataTable</param>
/// <param name="filePath">文件路径</param>
public static void SaveCsv(DataTable dt, string filePath)
{
FileStream fs = null;
StreamWriter sw = null;
try
{
fs = new FileStream(filePath + dt.TableName + ".csv", FileMode.Create, FileAccess.Write);
sw = new StreamWriter(fs, Encoding.Default);
var data = string.Empty;
//写出列名称
for (var i = 0; i < dt.Columns.Count; i++)
{
data += dt.Columns[i].ColumnName;
if (i < dt.Columns.Count - 1)
{
data += ",";
}
}
sw.WriteLine(data);
//写出各行数据
for (var i = 0; i < dt.Rows.Count; i++)
{
data =string.Empty;
for (var j = 0; j < dt.Columns.Count; j++)
{
data += dt.Rows[i][j].ToString();
if (j < dt.Columns.Count - 1)
{
data += ",";
}
}
sw.WriteLine(data);
}
}
catch (IOException ex)
{
throw new IOException(ex.Message, ex);
}
finally
{
if (sw != null) sw.Close();
if (fs != null) fs.Close();
}
}

以上所述是小编给大家介绍的C#中将DataTable转换成CSV文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对呐喊教程网站的支持!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。