解决ASPNET导出Excel文件时-用Excel2007打开时弹出文件类型与扩展名不同的对话框_第1页
解决ASPNET导出Excel文件时-用Excel2007打开时弹出文件类型与扩展名不同的对话框_第2页
解决ASPNET导出Excel文件时-用Excel2007打开时弹出文件类型与扩展名不同的对话框_第3页
解决ASPNET导出Excel文件时-用Excel2007打开时弹出文件类型与扩展名不同的对话框_第4页
解决ASPNET导出Excel文件时-用Excel2007打开时弹出文件类型与扩展名不同的对话框_第5页
已阅读5页,还剩5页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

解决ASP.NET导出Excel文件时用Excel2007打开时弹出文件类型与扩展名不同的对话框protectedvoidbtnExport_Click(objectsender,EventArgse)3{4stringstrMapPath=Server.MapPath("~/");//获取Web应用程序的物理路径5stringsourceExcelFileName=strMapPath+"Temp.xls";//源Excel文件名6stringtargetExcelFileName=strMapPath+@"TempExcel\"+Guid.NewGuid().ToString()+".xls";//使用Guid生成全局唯一字符串,作为目标Excel文件的文件名78File.Copy(sourceExcelFileName,targetExcelFileName);//Copy文件,放在目标文件夹中910//Excel模型,用来操作Excel文件11Microsoft.Office.Interop.Excel.ApplicationexcelApp=null;12Microsoft.Office.Interop.Excel.WorkbookexcelWb=null;13Microsoft.Office.Interop.Excel.WorksheetexcelWs=null;14Microsoft.Office.Interop.Excel.RangeexcelR=null;1516try17{18excelApp=newMicrosoft.Office.Interop.Excel.Application();19excelWb=excelApp.Workbooks.Open(targetExcelFileName);//打开Excel工作簿文件20excelWs=(Microsoft.Office.Interop.Excel.Worksheet)(excelWb.Sheets.get_Item(1));//选择工作簿中第一个工作表2122//向Excel中添加列名23for(inti=0;i<dtbl.Columns.Count;i++)24{25stringrangeName=((Char)(i+Excel58Response.ContentType="application/ms-excel";59Response.WriteFile(targetExcelFileName);//把刚刚生成的Excel文件写入Http流60Response.End();6162}2.由于会在临时文件夹中存储Excel文件,所以写了一个类用来清理过期不用的Excel文件:1///<summary>2///TempExcelCleaner清理TempExcel文件夹中已经不用的临时Excel文件3///</summary>4publicclassTempExcelCleaner5{6privatestringtempDirectoryPath;7privateintovertime=30;8privateintsleeptime=60;910///<summary>11///每次扫描文件夹的间隔时间,单位分钟12///</summary>13publicintSleeptime14{15get{returnsleeptime;}16set{sleeptime=value;}17}1819///<summary>20///文件过期时间,单位分钟21///</summary>22publicintOvertime23{24get{returnovertime;}25set{overtime=value;}26}2728///<summary>29///构造TempExcelCleaner30///</summary>31///<paramname="tempDirectoryPath">要清理的文件夹路径</param>32publicTempExcelCleaner(stringtempDirectoryPath)33{34this.tempDirectoryPath=tempDirectoryPath;35}3637privateTempExcelCleaner()38{39}4041///<summary>42///运行,开始清理指定文件夹43///</summary>44publicvoidRun()45{46DirectoryInfodirectory=newDirectoryInfo(tempDirectoryPath);47//遍历文件夹中所有文件,超过指定时间就删除48foreach(FileInfofileindirectory.GetFiles())49{50DateTimecreateTime=file.CreationTime;51if(createTime.AddMinutes(overtime)<DateTime.Now)52{53file.Delete();54}55}56//遍历完所有文件,休息指定时间57System.Threading.Thread.Sleep(sleeptime*60*1000);58}59}3.在Golobal.asax中的代码,在Web应用程序启动时开始临时文件清理的服务:1voidApplication_Start(objectsender,EventArgse)2{3//在应用程序启动时运行的代码4//Web应用程序启动时开始执行清理程序。5System.Threading.ThreadthreadTempExcelCleaner=newSystem.Threading.Thread(newSystem.Threading.ThreadStart(FunCleanTempExcel));6threadTempExcelCleaner.IsBackground=true;7threadTempExcelCleaner.Start();8}910voidFunCleanTempE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论