/// <summary>
/// export to .csv format
/// </summary>
/// <param name="gv">gridview control</param>
/// <param name="page">page</param>
/// <param name="fileName">file name</param>
public static void ImportToCSV(System.Web.UI.WebControls.GridView gv, System.Web.UI.Page page,int[] displayColumns, string fileName)
{
string defaultFileName = "input name.csv";
if (string.IsNullOrEmpty(fileName))
{
fileName = defaultFileName;
}
StringBuilder sb = new StringBuilder();
page.Response.AppendHeader("Content-Disposition", "attachment;filename=" + fileName);
//page.Response.ContentType = "application/ms-excel";
page.Response.Charset = "UTF-8";
page.Response.ContentEncoding = System.Text.Encoding.UTF8;
foreach (System.Web.UI.WebControls.GridViewRow row in gv.Rows)
{
if (row.RowType == System.Web.UI.WebControls.DataControlRowType.DataRow)
{
for (int i = 0; i < displayColumns.Length; i++)
{
// has instead of string.empty when default value is string.empty in the cell of gridview, so replace it.
sb.Append("\"");
if (!row.Cells[displayColumns[i]].Text.Trim().Equals(" "))
{
sb.Append(row.Cells[displayColumns[i]].Text.Trim());
}
sb.Append("\"");
if (i != displayColumns.Length - 1)
{
sb.Append(",");
}
else
{
sb.Append("\r\n");
}
}
}
}
//输出
page.Response.Write(sb.ToString());
page.Response.End();
}
/// export to .csv format
/// </summary>
/// <param name="gv">gridview control</param>
/// <param name="page">page</param>
/// <param name="fileName">file name</param>
public static void ImportToCSV(System.Web.UI.WebControls.GridView gv, System.Web.UI.Page page,int[] displayColumns, string fileName)
{
string defaultFileName = "input name.csv";
if (string.IsNullOrEmpty(fileName))
{
fileName = defaultFileName;
}
StringBuilder sb = new StringBuilder();
page.Response.AppendHeader("Content-Disposition", "attachment;filename=" + fileName);
//page.Response.ContentType = "application/ms-excel";
page.Response.Charset = "UTF-8";
page.Response.ContentEncoding = System.Text.Encoding.UTF8;
foreach (System.Web.UI.WebControls.GridViewRow row in gv.Rows)
{
if (row.RowType == System.Web.UI.WebControls.DataControlRowType.DataRow)
{
for (int i = 0; i < displayColumns.Length; i++)
{
// has instead of string.empty when default value is string.empty in the cell of gridview, so replace it.
sb.Append("\"");
if (!row.Cells[displayColumns[i]].Text.Trim().Equals(" "))
{
sb.Append(row.Cells[displayColumns[i]].Text.Trim());
}
sb.Append("\"");
if (i != displayColumns.Length - 1)
{
sb.Append(",");
}
else
{
sb.Append("\r\n");
}
}
}
}
//输出
page.Response.Write(sb.ToString());
page.Response.End();
}