C#导出Excel
/// <summary>
/// 导出
/// </summary>
protected void linkExport_Click(object sender, EventArgs e)
{
if (this.gvApproveList.Rows.Count < 50000)
{
HttpResponse response = HttpContext.Current.Response;
response.Clear();
response.BufferOutput = true;
response.Cache.SetCacheability(HttpCacheability.Private);// 缓存使可以不保存就打开
response.Cache.SetExpires(DateTime.Now);// 立即过期
response.AppendHeader("content-Type", "application/vnd.ms-excel");
response.AppendHeader("Content-Disposition", "attachment; filename =ExamineAndApprove" + DateTime.Now.ToString("yyyyMMdd") + ".xls");
response.Write(@"<meta http-equiv=""Content-Type"" content=""text/html; charset=utf-8"">");
response.Write("<table border=\"1\" style=\"font-family: 宋体, Arial, sans-serif; font-size: 9.5pt;\">\r\n");
response.Write("<tr>");
response.Write("<th>申请单号</th>");
response.Write("<th>申请类型</th>");
response.Write("<th>厂商</th>");
response.Write("<th>供应商</th>");
response.Write("<th>金额</th>");
response.Write("<th>币种</th>");
response.Write("<th>部门</th>");
response.Write("<th>申请人</th>");
response.Write("<th>申请日期</th>");
response.Write("<th>申请原因</th>");
response.Write("<th>附件</th>");
response.Write("<th>审批状态</th>");
response.Write("</tr>\r\n");
string sqlStr = this.GetSqlStr();
SqlDataReader reader = ObjectOperation.ExecuteReader(sqlStr);
while (reader.Read())
{
response.Write("<tr>");
response.Write("<td>" + reader["BillNo"].ToString() + "</td>");
response.Write("<td>" + reader["RequestType"].ToString() + "</td>");
response.Write("<td>" + reader["FactoryName"].ToString() + "</td>");
response.Write("<td>" + reader["SupplierName"].ToString() + "</td>");
response.Write("<td>" + reader["Amount"].ToString() + "</td>");
response.Write("<td>" + reader["CurrencyID"].ToString() + "</td>");
response.Write("<td>" + reader["Department"].ToString() + "</td>");
response.Write("<td>" + reader["CreateUser"].ToString() + "</td>");
response.Write("<td>" + (reader["CreateTime"].ToString().Length == 0 ? "" : Convert.ToDateTime(reader["CreateTime"].ToString()).ToString("yyyy-MM-dd")) + "</td>");
response.Write("<td>" + reader["Cause"].ToString() + "</td>");
response.Write("<td>" + (reader["ISHas"].ToString().Length == 0 ? "无" : "有") + "</td>");
response.Write("<td>" + reader["ApproveStatus"].ToString() + "</td>");
response.Write("</tr>");
}
response.Write("</table>\r\n");
response.Flush();
response.End();
}
else
{
this.ShowMessage = "导出数据超过50000条,请增加查询条件,分批导出数据!";
}
}

浙公网安备 33010602011771号