ASP編程入門(mén)進(jìn)階(十七):FSO組件之文件夾操作
更新時(shí)間:2007年01月03日 00:00:00 作者:
操作完驅(qū)動(dòng)器,接著就是來(lái)操作文件夾了。其中包括:提取文件夾信息、創(chuàng)建文件夾、刪除文件夾、復(fù)制文件夾、移動(dòng)文件夾等。下面就具體來(lái)看。
一、fso.GetFolder
一看就明白,是提取文件夾了。那具體是提取哪個(gè)文件夾呢?后面肯定要跟一個(gè)文件夾的路徑。提取出來(lái)了再來(lái)顯示該文件夾相關(guān)信息呢?是不是有要具體提取下去。所以,看程序:
1,getfldr.asp
首先建立FSO組件的連接是必不可少的啦,然后Set fldr = fso.GetFolder("c:\Program Files")設(shè)定fldr對(duì)象被賦值,以作下面程序的引用。
fldr.IsRootFolder即為判斷該文件夾是否為一根文件夾,值為布爾值(true or false);fldr.Drive則顯示該文件夾所在的驅(qū)動(dòng)器號(hào)了。
二、fso.CreateFolder
下面比較讓人激動(dòng)的是通過(guò)ASP建立文件夾了,你可以在你的權(quán)力范圍內(nèi)任意位置建立任意文件夾。
2,creatfldr.asp
執(zhí)行程序,應(yīng)該發(fā)現(xiàn)C盤(pán)多出了cnbruce文件夾,fso.GetBaseName則是提取文件夾名。
三、fso.DeleteFolder
通過(guò)ASP可以建立了文件夾,則同樣可以刪除文件夾。
3,delfldr.asp
發(fā)現(xiàn)剛建立的cnbruce文件夾確實(shí)已被刪除。
注意,有時(shí)需要?jiǎng)h除文件夾,而該文件夾不存在時(shí),會(huì)出現(xiàn)程序邏輯性錯(cuò)誤。則應(yīng)先判斷文件夾的狀態(tài)。
那下面就采用一個(gè)通用程序來(lái)靈活應(yīng)變下。
4,mainflr.asp
需要注意的是:刪除并不會(huì)提示“確認(rèn)要放入回收站”這項(xiàng)。這點(diǎn)你需要謹(jǐn)慎處理,特別是對(duì)你的系統(tǒng)文件夾。
四、fso.MoveFolder
主要作用是進(jìn)行文件夾的移動(dòng),相當(dāng)于剪切粘貼動(dòng)作。
5,movefldr.asp
格式:fso.MoveFolder "被移動(dòng)的文件夾","移動(dòng)到的文件夾"
本程序先是在C盤(pán)下建立了cnbruce文件夾,然后將其移動(dòng)到C:\Program Files\文件夾下面。
不過(guò)同樣需要注意的是你的系統(tǒng)文件夾不能亂移動(dòng)。
五、fso.CopyFolder
主要作用:將文件夾從某位置復(fù)制到另一位置。
6,copyfldr.asp
該程序是建立在上一movefldr.asp的執(zhí)行結(jié)果基礎(chǔ)之上來(lái)完成復(fù)制到C盤(pán)根目錄下的。(話比較長(zhǎng)-_-!)
當(dāng)然,其拷貝也是將該文件夾包括里面所以子文件夾和文件統(tǒng)統(tǒng)拷貝。
到最后再試著將c:\Program Files\cnbruce和c:\cnbruce兩個(gè)文件夾進(jìn)行刪除掉吧。
不過(guò),繼續(xù)提醒你:不要寫(xiě)錯(cuò)了,比如寫(xiě)成c:\Program Files,那你就慘了:這叫玩命,學(xué)ASP玩出心跳出來(lái)了。
對(duì)文件夾的操作差不多了,是不是感到用處比較大?有訓(xùn)言:好東西是把雙刃劍。正義和邪惡就只一線間,注意正規(guī)合理利用該組件。不過(guò)還有你放心的是,現(xiàn)在網(wǎng)站空間服務(wù)商對(duì)這權(quán)力已經(jīng)限定得死死的了,你再怎么鬧翻也不會(huì)冒泡的:)
然后接下來(lái)就是更微妙的:FSO對(duì)文件的操作。
一、fso.GetFolder
一看就明白,是提取文件夾了。那具體是提取哪個(gè)文件夾呢?后面肯定要跟一個(gè)文件夾的路徑。提取出來(lái)了再來(lái)顯示該文件夾相關(guān)信息呢?是不是有要具體提取下去。所以,看程序:
1,getfldr.asp
<% Set fso = CreateObject("Scripting.FileSystemObject") Set fldr = fso.GetFolder("c:\Program Files") Response.Write "父文件夾名字是:" & fldr & "<br>" If fldr.IsRootFolder = True Then Response.Write "該文件夾是一根文件夾" & "<br>" Else Response.Write "該文件夾不是根文件夾" & "<br>" End If Response.Write "驅(qū)動(dòng)器名字是:" & fldr.Drive & "<br>" %> |
首先建立FSO組件的連接是必不可少的啦,然后Set fldr = fso.GetFolder("c:\Program Files")設(shè)定fldr對(duì)象被賦值,以作下面程序的引用。
fldr.IsRootFolder即為判斷該文件夾是否為一根文件夾,值為布爾值(true or false);fldr.Drive則顯示該文件夾所在的驅(qū)動(dòng)器號(hào)了。
二、fso.CreateFolder
下面比較讓人激動(dòng)的是通過(guò)ASP建立文件夾了,你可以在你的權(quán)力范圍內(nèi)任意位置建立任意文件夾。
2,creatfldr.asp
<% Set fso = CreateObject("Scripting.FileSystemObject") fso.CreateFolder ("c:\cnbruce") Response.Write "文件夾名為" & fso.GetBaseName("c:\cnbruce") %> |
執(zhí)行程序,應(yīng)該發(fā)現(xiàn)C盤(pán)多出了cnbruce文件夾,fso.GetBaseName則是提取文件夾名。
三、fso.DeleteFolder
通過(guò)ASP可以建立了文件夾,則同樣可以刪除文件夾。
3,delfldr.asp
<% Set fso = CreateObject("Scripting.FileSystemObject") fso.DeleteFolder("c:\cnbruce") Response.Write "文件夾已刪除" %> |
發(fā)現(xiàn)剛建立的cnbruce文件夾確實(shí)已被刪除。
注意,有時(shí)需要?jiǎng)h除文件夾,而該文件夾不存在時(shí),會(huì)出現(xiàn)程序邏輯性錯(cuò)誤。則應(yīng)先判斷文件夾的狀態(tài)。
<% dir=server.mappath("cnbruce") Set fso = CreateObject("Scripting.FileSystemObject") if (fso.FolderExists(dir)) then fso.DeleteFolder(dir) response.write("cnbruce文件夾已經(jīng)刪除") else fso.CreateFolder(dir) response.write("cnbruce文件夾已經(jīng)建立") end if %> |
那下面就采用一個(gè)通用程序來(lái)靈活應(yīng)變下。
4,mainflr.asp
<% Sub CreateAFolder(file) Dim fso Set fso = CreateObject("Scripting.FileSystemObject") fso.CreateFolder(file) response.write "已經(jīng)建立了"&file End Sub Sub DeleteAFolder(file) Dim fso Set fso = CreateObject("Scripting.FileSystemObject") fso.DeleteFolder(file) response.write "已經(jīng)刪除了"&file End Sub %> <% subname=request.form("submit") create=request.form("create") del=request.form("del") if subname<>"" then if create<>"" then call CreateAFolder(""&create&"") end if if del<>"" then call DeleteAFolder(""&del&"") end if end if %> <form action="mainflr.asp" method="post"> <input name="create"> <input type="submit" value="建立" name="submit"> </form> <hr> <form action="mainflr.asp" method="post"> <input name="del"> <input type="submit" value="刪除" name="submit"> </form> |
需要注意的是:刪除并不會(huì)提示“確認(rèn)要放入回收站”這項(xiàng)。這點(diǎn)你需要謹(jǐn)慎處理,特別是對(duì)你的系統(tǒng)文件夾。
四、fso.MoveFolder
主要作用是進(jìn)行文件夾的移動(dòng),相當(dāng)于剪切粘貼動(dòng)作。
5,movefldr.asp
<% Set fso = CreateObject("Scripting.FileSystemObject") fso.CreateFolder ("c:\cnbruce") fso.MoveFolder "c:\cnbruce", "C:\Program Files\" %> <a href="C:\Program Files\">查看cnbruce文件夾有沒(méi)有移動(dòng)過(guò)來(lái)</a> |
格式:fso.MoveFolder "被移動(dòng)的文件夾","移動(dòng)到的文件夾"
本程序先是在C盤(pán)下建立了cnbruce文件夾,然后將其移動(dòng)到C:\Program Files\文件夾下面。
不過(guò)同樣需要注意的是你的系統(tǒng)文件夾不能亂移動(dòng)。
五、fso.CopyFolder
主要作用:將文件夾從某位置復(fù)制到另一位置。
6,copyfldr.asp
<% Set fso = CreateObject("Scripting.FileSystemObject") fso.CopyFolder "c:\Program Files\cnbruce", "c:\" %> <a href="C:\">查看cnbruce文件夾有沒(méi)有復(fù)制過(guò)來(lái)</a> |
該程序是建立在上一movefldr.asp的執(zhí)行結(jié)果基礎(chǔ)之上來(lái)完成復(fù)制到C盤(pán)根目錄下的。(話比較長(zhǎng)-_-!)
當(dāng)然,其拷貝也是將該文件夾包括里面所以子文件夾和文件統(tǒng)統(tǒng)拷貝。
到最后再試著將c:\Program Files\cnbruce和c:\cnbruce兩個(gè)文件夾進(jìn)行刪除掉吧。
不過(guò),繼續(xù)提醒你:不要寫(xiě)錯(cuò)了,比如寫(xiě)成c:\Program Files,那你就慘了:這叫玩命,學(xué)ASP玩出心跳出來(lái)了。
對(duì)文件夾的操作差不多了,是不是感到用處比較大?有訓(xùn)言:好東西是把雙刃劍。正義和邪惡就只一線間,注意正規(guī)合理利用該組件。不過(guò)還有你放心的是,現(xiàn)在網(wǎng)站空間服務(wù)商對(duì)這權(quán)力已經(jīng)限定得死死的了,你再怎么鬧翻也不會(huì)冒泡的:)
然后接下來(lái)就是更微妙的:FSO對(duì)文件的操作。
相關(guān)文章
asp rs.open sql,conn,3,1中3,1代表什么?
這篇文章主要介紹了ASP中conn,1,1和 conn,2,3 conn,3,2等的含義需要的朋友可以參考下2007-07-07.NET Framework各版本(.NET2.0 3.0 3.5 4.0)區(qū)別
本文主要介紹.NET各個(gè)版本之間的區(qū)別,以幫助新手朋友選擇適合的.NET Framework的版本進(jìn)行開(kāi)發(fā)。2016-03-03為什么在存儲(chǔ)過(guò)程中用OLEDB方式不能返回記錄集
為什么在存儲(chǔ)過(guò)程中用OLEDB方式不能返回記錄集...2006-06-06