2014-01-26 58 views
1
Microsoft.Office.Interop.Excel.Application xlApp; 
Microsoft.Office.Interop.Excel.Workbook xlWorkBook; 
Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet; 
object misValue = System.Reflection.Missing.Value; 
xlApp = new Microsoft.Office.Interop.Excel.ApplicationClass(); 
xlWorkBook = xlApp.Workbooks.Add(misValue); 

xlWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); 
xlWorkSheet.Cells[1, 1] = "http://csharp.net-informations.com"; 

xlWorkBook.SaveAs("csharp-Excel.xls", Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue); 
xlWorkBook.Close(true, misValue, misValue); 
xlApp.Quit(); 

這裏是我的C#按鈕代碼。我只是想按鈕點擊自動執行此excel文件下載。這段代碼只生成excel文件。以及如何添加下載代碼。我不知道。例如,我們在谷歌瀏覽器中下載任何東西,然後點擊項目開始下載。並在瀏覽器下載文件底部顯示。如何做到這一點,,請幫我 感謝 提前動態創建excel文件並自動下載

+0

喜@ user2849657的對象的實例,若跌破作品的答案,你應該接受它。見http://meta.stackexchange.com/a/5235/253846 – Fllo

回答

1

在下面的代碼,你知道Excel文件的路徑,你在哪裏保存Excel文件

xlWorkBook.SaveAs("csharp-Excel.xls" 

現在你知道你已經創建Excel文件,並在服務器上保存的位置(〜/ CSHARP-Excel.xls) 創建生成Excel文件

string path = Server.MapPath("~/csharp-Excel.xls"); 
    System.IO.FileInfo file = new System.IO.FileInfo(path); 
    string Outgoingfile = "FileName.xlsx"; 
    if (file.Exists) 
     { 
      Response.Clear(); 
      Response.ClearContent(); 
      Response.ClearHeaders(); 
      Response.AddHeader("Content-Disposition", "attachment; filename=" + Outgoingfile); 
      Response.AddHeader("Content-Length", file.Length.ToString()); 
      Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; 
      Response.WriteFile(file.FullName); 
      Response.Flush(); 
      Response.Close(); 

     } 
    else 
     { 
      Response.Write("This file does not exist."); 
     } 
+0

謝謝兄弟:) –