解決ASPNET導(dǎo)出Excel文件時(shí)-用Excel2007打開時(shí)彈出文件類型與擴(kuò)展名不同的對(duì)話框_第1頁(yè)
解決ASPNET導(dǎo)出Excel文件時(shí)-用Excel2007打開時(shí)彈出文件類型與擴(kuò)展名不同的對(duì)話框_第2頁(yè)
解決ASPNET導(dǎo)出Excel文件時(shí)-用Excel2007打開時(shí)彈出文件類型與擴(kuò)展名不同的對(duì)話框_第3頁(yè)
解決ASPNET導(dǎo)出Excel文件時(shí)-用Excel2007打開時(shí)彈出文件類型與擴(kuò)展名不同的對(duì)話框_第4頁(yè)
解決ASPNET導(dǎo)出Excel文件時(shí)-用Excel2007打開時(shí)彈出文件類型與擴(kuò)展名不同的對(duì)話框_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

解決ASP.NET導(dǎo)出Excel文件時(shí)用Excel2007打開時(shí)彈出文件類型與擴(kuò)展名不同的對(duì)話框protectedvoidbtnExport_Click(objectsender,EventArgse)3{4stringstrMapPath=Server.MapPath("~/");//獲取Web應(yīng)用程序的物理路徑5stringsourceExcelFileName=strMapPath+"Temp.xls";//源Excel文件名6stringtargetExcelFileName=strMapPath+@"TempExcel\"+Guid.NewGuid().ToString()+".xls";//使用Guid生成全局唯一字符串,作為目標(biāo)Excel文件的文件名78File.Copy(sourceExcelFileName,targetExcelFileName);//Copy文件,放在目標(biāo)文件夾中910//Excel模型,用來(lái)操作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));//選擇工作簿中第一個(gè)工作表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.由于會(huì)在臨時(shí)文件夾中存儲(chǔ)Excel文件,所以寫了一個(gè)類用來(lái)清理過(guò)期不用的Excel文件:1///<summary>2///TempExcelCleaner清理TempExcel文件夾中已經(jīng)不用的臨時(shí)Excel文件3///</summary>4publicclassTempExcelCleaner5{6privatestringtempDirectoryPath;7privateintovertime=30;8privateintsleeptime=60;910///<summary>11///每次掃描文件夾的間隔時(shí)間,單位分鐘12///</summary>13publicintSleeptime14{15get{returnsleeptime;}16set{sleeptime=value;}17}1819///<summary>20///文件過(guò)期時(shí)間,單位分鐘21///</summary>22publicintOvertime23{24get{returnovertime;}25set{overtime=value;}26}2728///<summary>29///構(gòu)造TempExcelCleaner30///</summary>31///<paramname="tempDirectoryPath">要清理的文件夾路徑</param>32publicTempExcelCleaner(stringtempDirectoryPath)33{34this.tempDirectoryPath=tempDirectoryPath;35}3637privateTempExcelCleaner()38{39}4041///<summary>42///運(yùn)行,開始清理指定文件夾43///</summary>44publicvoidRun()45{46DirectoryInfodirectory=newDirectoryInfo(tempDirectoryPath);47//遍歷文件夾中所有文件,超過(guò)指定時(shí)間就刪除48foreach(FileInfofileindirectory.GetFiles())49{50DateTimecreateTime=file.CreationTime;51if(createTime.AddMinutes(overtime)<DateTime.Now)52{53file.Delete();54}55}56//遍歷完所有文件,休息指定時(shí)間57System.Threading.Thread.Sleep(sleeptime*60*1000);58}59}3.在Golobal.asax中的代碼,在Web應(yīng)用程序啟動(dòng)時(shí)開始臨時(shí)文件清理的服務(wù):1voidApplication_Start(objectsender,EventArgse)2{3//在應(yīng)用程序啟動(dòng)時(shí)運(yùn)行的代碼4//Web應(yīng)用程序啟動(dòng)時(shí)開始執(zhí)行清理程序。5System.Threading.ThreadthreadTempExcelCleaner=newSystem.Threading.Thread(newSystem.Threading.ThreadStart(FunCleanTempExcel));6threadTempExcelCleaner.IsBackground=true;7threadTempExcelCleaner.Start();8}910voidFunCleanTempE

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論