Microsoft.Office.Interop.Owc11.SpreadsheetClass oSheet = new SpreadsheetClass( ); XmlDocument xmlDoc = new XmlDocument( ); xmlDoc.Load(Server.MapPath( " ./Reports/ " ) + " abc.xml " ); string strXml = xmlDoc.DocumentElement.OuterXml; oSheet.XMLData = strXml; oSheet.Cells[ 2 , 12 ] = DateTime.Now.ToString( " yyyyMMdd " ); // 制表日期 int i = 4 ; if (Session[ " datatable " ] != null ) { DataTable dt= (System.Data.DataTable)Session["datatable"]; for(int j=0;j<dt.Rows.Count;j++) { oSheet.Cells[i,1] = dt.Rows[j][1].ToString(); oSheet.Cells[i,2] = dt.Rows[j][2].ToString(); oSheet.Cells[i,3] = dt.Rows[j][3].ToString(); i++; } } oSheet.get_Range(oSheet.Cells[ 4 , 1 ], oSheet.Cells[i - 1 , 3 ]).Borders.set_LineStyle(XlLineStyle.xlContinuous); oSheet.get_Range(oSheet.Cells[ 4 , 1 ], oSheet.Cells[i - 1 , 3 ]).Font.set_Size( 10 ); string desFileName = " abc " + System.DateTime.Now.ToString( " yyMMddHHmmssff " ) + " .xls " ; string desPathFileName = Server.MapPath( " ../ReportDocs/ " ) + desFileName; // 輸出整理後的文件 oSheet.Export(desPathFileName, Microsoft.Office.Interop.Owc11.SheetExportActionEnum.ssExportActionNone, Microsoft.Office.Interop.Owc11.SheetExportFormat.ssExportXMLSpreadsheet); string path = desPathFileName; System.IO.FileInfo file = new System.IO.FileInfo(path); // 以下載的方式顯示文件 Response.Clear(); // Response.Charset="GB2312"; Response.ContentEncoding = System.Text.Encoding.UTF8; // 指定默認文件名 Response.AddHeader( " Content-Disposition " , " attachment; filename= " + Server.UrlEncode(file.Name)); // 指定文件大小 Response.AddHeader( " Content-Length " , file.Length.ToString()); // 下載方式 Response.ContentType = " application/ms-excel " ; // 把文件流傳送到Client端 Response.WriteFile(file.FullName); file = null ; Response.End(); 转载: http://www.cnblogs.com/cai/archive/2006/04/12/372878.html