Sunday, November 22, 2009

Exports datatable to CSV

The following function exports datatable to CSV format in c#,


public static void ConvertCSV(DataTable dataTable, HttpResponse Response)
{
try
{
Response.Clear();
Response.Buffer = true;
Response.AddHeader("content-disposition","attachment;filename=Product.csv");
Response.Charset = "";
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = "Application/x-msexcel";
StringBuilder sb = new StringBuilder();
if (dataTable.Columns.Count != 0)
{
foreach (DataColumn column in dataTable.Columns)
{
sb.Append(column.ColumnName + ',');
}
sb.Append("\r\n");
foreach (DataRow row in dataTable.Rows)
{
foreach (DataColumn column in dataTable.Columns)
{
if(row[column].ToString().Contains(',')==true)
{
row[column] = row[column].ToString().Replace(",", "");
}
sb.Append(row[column].ToString() + ',');
}
sb.Append("\r\n");
}
}
Response.Write(sb.ToString());
Response.End();
}
catch (Exception err)
{
throw err;
}
}

No comments:

Post a Comment