调用这个方法,传入数据源(sql语句查询结果)和 文件名
形成一个Excel文件(内容为查询结果,加别名显示中文表头)
//DataTable dt 数据源
//string FileName 文件名
public void CreateExcel(DataTable dt, string FileName) {
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.Charset = "UTF-8";
HttpContext.Current.Response.ContentType = "application/vnd.ms-xls";
HttpContext.Current.Response.AddHeader("content-disposition", "attachment;filename=" + FileName + ".xls");
StringBuilder table = new StringBuilder();
//有边框
table.Append("<table border=\"1px\"><tr>");
for (int j = 0; j < dt.Columns.Count; j++)
{
table.Append("<td>");
table.Append(dt.Columns[i].Caption.ToString());//表格的标题
table.Append("</td>");
}
table.Append("</tr>");
for (int i = 0 ; i < dt.Rows.Count; i++)
{
table.Append("<tr>");
for (int j = 0; j < dt.Columns.Count; j++)
{
table.Append("<td style='vnd.ms-excel.numberformat:@'>");
table.Append(dt.Rows[i][j].ToString());
table.Append("</td>");
}
table.Append("</tr>");
}
table.Append("</table>");
HttpContext.Current.Response.Write(table);
HttpContext.Current.Response.End();
}