protected void barExport_ButtonClicked(object sender, Infragistics.WebUI.UltraWebToolbar.ButtonEvent be)
{
if (be.Button.Key == "One")
{
DataSet ds = (DataSet)ViewState["DataSet"];
System.Data.DataTable t = new System.Data.DataTable();
t.TableName = "線(xiàn)路信息查詢(xún)";
t.Columns.Add("投運單位");
t.Columns.Add("線(xiàn)路名稱(chēng)");
t.Columns.Add("線(xiàn)路長(cháng)度(KM)");
t.Columns.Add("投運日期");
t.Columns.Add("電壓等級(kV)");
t.Columns.Add("總桿塔數");
if (ds == null || ds.Tables[0].Rows.Count < 1)
{
return;
}
else
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
DataRow r = t.NewRow();
DataRow r2 = ds.Tables[0].Rows[i];
r["投運單位"] = r2["BUILDUNIT"];
r["線(xiàn)路名稱(chēng)"] = r2["NAME"];
r["線(xiàn)路長(cháng)度(KM)"] = r2["LENGTH"];
r["投運日期"] = DateTime.Parse(r2["LAUNCHDATE"].ToString()).ToString("yyyy-MM-dd");
r["電壓等級(kV)"] = r2["VOLTAGELEVEL.code_name"];
r["總桿塔數"] = r2["POLECOUNT"];
t.Rows.Add(r);
}
GetExcel(t);
}
}
}
public void GetExcel( System.Data.DataTable dtData )
{
System.Web.UI.WebControls.GridView dgExport = null;
// 當前對話(huà)
System.Web.HttpContext curContext = System.Web.HttpContext.Current;
// IO用于導出并返回excel文件
System.IO.StringWriter strWriter = null;
System.Web.UI.HtmlTextWriter htmlWriter = null;
if ( dtData != null )
{
// 設置編碼和附件格式
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.HeaderEncoding = System.Text.Encoding.GetEncoding("gb2312");
curContext.Response.ContentType = "application/vnd.ms-excel";
curContext.Response.AppendHeader("Content-Disposition", "attachment;filename=" + dtData.TableName + DateTime.Today.ToShortDateString() + ".xls"); //定義輸出文件和文件名
curContext.Response.ContentEncoding = System.Text.Encoding.UTF8;
System.Web.HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.Default;
curContext.Response.Charset = "";
// 導出excel文件
strWriter = new System.IO.StringWriter();
htmlWriter = new System.Web.UI.HtmlTextWriter( strWriter );
dgExport = new System.Web.UI.WebControls.GridView();
dgExport.DataSource = dtData.DefaultView;
dgExport.AllowPaging = false;
dgExport.DataBind();
dgExport.RenderControl( htmlWriter );
curContext.Response.Write( strWriter.ToString() );
curContext.Response.End();
}
}
聯(lián)系客服