2014-01-26 57 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

谢谢兄弟:) –