//author: walker
//date: 2014-01-07
//function: 将DataTable导出到csv文件
public static bool datatableToCSV(DataTable dt, string pathFile)
{
string strLine = "";
StreamWriter sw;
try
{
sw = new StreamWriter(pathFile, false, System.Text.Encoding.GetEncoding(-0)); //覆盖
//表头
for (int i = 0; i < dt.Columns.Count; i++)
{
if (i > 0)
strLine += ",";
strLine += dt.Columns[i].ColumnName;
}
strLine.Remove(strLine.Length - 1);
sw.WriteLine(strLine);
strLine = "";
//表的内容
for (int j = 0; j < dt.Rows.Count; j++)
{
strLine = "";
int colCount = dt.Columns.Count;
for (int k = 0; k < colCount; k++)
{
if (k > 0 && k < colCount)
strLine += ",";
if (dt.Rows[j][k] == null)
strLine += "";
else
{
string cell = dt.Rows[j][k].ToString().Trim();
//防止里面含有特殊符号
cell = cell.Replace("\"", "\"\"");
cell = "\"" + cell + "\"";
strLine += cell;
}
}
sw.WriteLine(strLine);
}
sw.Close();
string msg = "数据被成功导出到:" + pathFile;
Console.WriteLine(msg);
}
catch (Exception ex)
{
string msg = "导出错误:" + pathFile;
Console.WriteLine(msg);
return false;
}
return true;
}
相关阅读:
*** walker ***