如何将数据从数据表导出为.csv格式

时间:2014-08-26 10:30:41

标签: asp.net

enter image description here

我正在尝试将一些数据从datatable导出到.csv文件。但是这些数据并没有作为空白文件来到.csv文件

1 个答案:

答案 0 :(得分:2)

应关闭StreamWriter以将写入其内部缓冲区的数据刷新到文件中。

所以你真的需要将StreamWriter的创建括在using statement内。 using语句管理文件的关闭并释放系统资源(文件句柄)。当异常情况下,当你到达使用区块末尾的右括号时,所有这些都会自动发生。

using(StreamWriter sw = new StreamWriter("D:\\report.csv"))
{

    ... all the code that read the datatable and write in the stream....


} // here you get: sw.Flush(); sw.Close(); sw.Dispose();

似乎您也在最后一列的每行末尾添加逗号。
在循环内线

if(i != dt.Columns.Count)

永远不会假,因为当变量i到达dt.Columns.Count值时退出循环。将其更改为

if(i < dt.Columns.Count-1)