/// <summary>
/// DataTable导出到Excel
/// </summary>
/// <param name="dt">导出源</param>
/// <param name="autoAddHeader">是否根据ColumnName自动添加表头</param>
private void ExportExcelData(DataTable dt,bool autoAddHeader)
{
StringBuilder sb = new StringBuilder();
sb.Append("<html><head><title></title><meta http-equiv='content-type' content='application/ms-excel; charset=UTF-8'/></head><body><table border='1' width='auto'>");
if (autoAddHeader)
{
sb.Append("<tr>");
foreach (DataColumn dc in dt.Columns)
{
sb.Append("<td>" + GetLang(dc.ColumnName) + "</td>");
}
sb.Append("</tr>");
}
int col = dt.Columns.Count;
foreach (DataRow dr in dt.Rows)
{
sb.Append("<tr>");
for (int i = 0; i < col; i++)
sb.Append("<td>" + dr[i] + "</td>");
sb.Append("</tr>");
}
sb.Append("</table></body></html>");
Response.ContentType = "application/vnd.ms-excel";
Response.ContentEncoding = Encoding.UTF8;
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(DateTime.Now.ToString("yyyyMMdd") + ".xls", System.Text.Encoding.UTF8));
Response.Write(sb.ToString());
Response.Flush();
Response.End();
}
浙公网安备 33010602011771号