您的位置:首页 > 编程语言 > C#

利用OWC组件生成EXCEL表(c#)

2007-02-05 10:49 525 查看
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)
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: