[C#] 纯文本查看 复制代码 /// <summary>
/// 导出报表为Csv
/// </summary>
/// <param name="dt">DataTable</param>
/// <param name="strFilePath">物理路径</param>
/// <param name="tableheader">表头</param>
/// <param name="columname">字段标题,逗号分隔</param>
public static bool dt2csv(DataTable dt, string strFilePath, string tableheader, string columname,string fileds ="")
{
try
{
string strBufferLine = "";
StreamWriter strmWriterObj = new StreamWriter(strFilePath, false, System.Text.Encoding.UTF8);
strmWriterObj.WriteLine(tableheader);
strmWriterObj.WriteLine(columname);
for (int i = 0; i < dt.Rows.Count; i++)
{
strBufferLine = "";
if (fileds != "")
{
string[] filedArr = fileds.Split(',');
for (int j = 0; j < filedArr.Length; j++)
{
string filed = filedArr[j];
if (j > 0)
strBufferLine += ",";
strBufferLine += dt.Rows[i][filed].ToString().Replace(',',',').Replace('"','“');
}
}
else
{
for (int j = 0; j < dt.Columns.Count; j++)
{
if (j > 0)
strBufferLine += ",";
strBufferLine += dt.Rows[i][j].ToString().Replace(',', ',').Replace('"', '“');
}
}
strmWriterObj.WriteLine(strBufferLine);
}
strmWriterObj.Close();
return true;
}
catch
{
return false;
}
}
改造好的导出!楼主这个导出时必须是和表字段一样,这个可以按表字段来导出
|