2013-12-15 130 views
0

我創建一個使用數據表作爲輸入到該函數的excel文件。雖然是創建excel文件,但並不添加標題。任何一個可以給代碼這樣做下面 是代碼和Excel文件的行/式柱結構..將標題添加到excel文件

private void ExporttoExcel(DataTable table) 
{ 
    HttpContext.Current.Response.Clear(); 
    HttpContext.Current.Response.ClearContent(); 
    HttpContext.Current.Response.ClearHeaders(); 
    HttpContext.Current.Response.Buffer = true; 
    HttpContext.Current.Response.ContentType = "application/ms-excel"; 
    //HttpContext.Current.Response.ContentType = "application/ms-word"; 
    HttpContext.Current.Response.Write(@"<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.0 Transitional//EN"">"); 
    HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=Reports.xls"); 
    // HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=Reports.doc"); 
    // HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=Reports.xlsx"); 
    HttpContext.Current.Response.Write("head"); 
    HttpContext.Current.Response.Write("tail"); 
    // excell_app.createHeaders(5, 2, "Total of Products", "B5", "D5", 2, "YELLOW", true, 10, "n"); 

    HttpContext.Current.Response.Charset = "utf-8"; 
    HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("windows-1250"); 
    HttpContext.Current.Response.Write("<font style='font-size:10.0pt; font-family:Calibri;'>"); 
    HttpContext.Current.Response.Write("<BR><BR><BR>"); 
    HttpContext.Current.Response.Write("<Table border='1' bgColor='#ffffff' borderColor='#000000' cellSpacing='0' cellPadding='0' style='font-size:10.0pt; font-family:Calibri; background:white;'> <TR>"); 
    int columnscount = GridView1.Columns.Count; 

    for (int j = 0; j < columnscount; j++) 
    { 


     HttpContext.Current.Response.Write("<Td>"); 
     HttpContext.Current.Response.Write("<B>"); 
     //HttpContext.Current.Response.Write(GridView1.Columns[j].HeaderText.ToString()); 
    } 

    HttpContext.Current.Response.Write("</TR>"); 
    foreach (DataRow row in table.Rows) 
    { 
     HttpContext.Current.Response.Write("<TR>"); 
     for (int i = 0; i < table.Columns.Count; i++) 
     { 
      HttpContext.Current.Response.Write("<Td>"); 
      HttpContext.Current.Response.Write(row[i].ToString()); 
      HttpContext.Current.Response.Write("</Td>"); 
     } 

     HttpContext.Current.Response.Write("</TR>"); 
    } 
    HttpContext.Current.Response.Write("</Table>"); 
    HttpContext.Current.Response.Write("</font>"); 
    HttpContext.Current.Response.Flush(); 
    HttpContext.Current.Response.End(); 
} 

City聯繫EMAILID NAME ID NUMBER LIKE

+0

行打印頭被註釋掉了。 – CodeCaster

+0

我很抱歉你可以指出哪些代碼,因爲如果我在下面兩個代碼我得到錯誤// HttpContext.Current.Response.AddHeader(「Content-Disposition」,「attachment; filename = Reports.doc」); //HttpContext.Current.Response.AddHeader("Content-Disposition「,」attachment; filename = Reports.xlsx「); – user2621743

+0

'//HttpContext.Current.Response.Write(GridView1.Columns[j].HeaderText.ToString());' – CodeCaster

回答

0
private void ExporttoExcel(DataTable table) 
{ 
     HttpContext.Current.Response.Clear(); 
     HttpContext.Current.Response.ClearContent(); 
     HttpContext.Current.Response.ClearHeaders(); 
     HttpContext.Current.Response.Buffer = true; 
     HttpContext.Current.Response.ContentType = "application/ms-excel"; 
     //HttpContext.Current.Response.ContentType = "application/ms-word"; 
     HttpContext.Current.Response.Write(@"<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.0 Transitional//EN"">"); 
     HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=Reports.xls"); 
     // HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=Reports.doc"); 
     HttpContext.Current.Response.Charset = "utf-8"; 
     HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("windows-1250"); 
     HttpContext.Current.Response.Write("<font style='font-size:10.0pt; font-family:Calibri;'>"); 
     HttpContext.Current.Response.Write("<BR><BR><BR>"); 
     HttpContext.Current.Response.Write("<Table border='1' bgColor='#ffffff' borderColor='#000000' cellSpacing='0' cellPadding='0' style='font-size:10.0pt; font-family:Calibri; background:white;'> <TR>"); 
     int columnscount = GridView_Result.Columns.Count; 

     for (int j = 0; j < columnscount; j++) 
     { 
      HttpContext.Current.Response.Write("<Td>"); 
      HttpContext.Current.Response.Write("<B>"); 
      HttpContext.Current.Response.Write(GridView_Result.Columns[j].HeaderText.ToString()); 
      HttpContext.Current.Response.Write("</B>"); 
      HttpContext.Current.Response.Write("</Td>"); 
     } 
     HttpContext.Current.Response.Write("</TR>"); 
     foreach (DataRow row in table.Rows) 
     { 
      HttpContext.Current.Response.Write("<TR>"); 
      for (int i = 0; i < table.Columns.Count; i++) 
      { 
       HttpContext.Current.Response.Write("<Td>"); 
       HttpContext.Current.Response.Write(row[i].ToString()); 
       HttpContext.Current.Response.Write("</Td>"); 
      } 

      HttpContext.Current.Response.Write("</TR>"); 
     } 
     HttpContext.Current.Response.Write("</Table>"); 
     HttpContext.Current.Response.Write("</font>"); 
     HttpContext.Current.Response.Flush(); 
     HttpContext.Current.Response.End(); 
    } 



    protected void Btn_Export_Click(object sender, EventArgs e) 
    { 
     ExporttoExcel(dt); 

    } 
}