asp和fso实现删除文件或文件夹

7 篇文章 0 订阅

'--------------------------------------------------------------------------------------1.asp

<!--#include file="function.asp" -->

<script>
   function checkAll(){
   for (i=0;i<document.forms[1].length;i++){
    if (document.forms[1][i].tagName=="INPUT"){
    if (document.forms[1][i].type=="checkbox")
     {document.forms[1][i].checked="checked"}
    }
   }
   }
</script>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<form name="form2" action="delf.asp" method="post" οnsubmit="if (confirm('是否删除选择的文件或文件夹')) {return true} else {return false}">
<input type="hidden" name="whatdo" value="DelFiles"/>

<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td bgcolor="#ff9600" colspan="5"height="2"></td>
  </tr><%
AttPath=Request.QueryString("AttPath")
  if len(AttPath)<1 then
    AttPath="uploadfile"
   elseif bc(server.mapPath(AttPath),server.mapPath("uploadfile")) then
    AttPath="uploadfile"
   end If

ArrFolders=split(getPathList(AttPath)(0),"*")
Arrfiles=split(getPathList(AttPath)(1),"*")
'response.write (AttPath&"<br>")

if AttPath<>"uploadfile" then
    arrUpFolders=split(AttPath,"/")
    for i=0 to ubound(arrUpFolders)-1
  
    arrUpFolder=arrUpFolder&TempF&arrUpFolders(i)
    TempF="/"
    next
end if%>
  <tr>
    <td height="30" align="left" valign="middle"><table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr>  <td width="9%" align="center"><a href="keshikongjian.asp"><img src="images/fhmu.gif" alt="" width="83" height="26" /></a></td>
        
  <td width="17%" height="30" align="center"> <%
if len(arrUpFolder)>0 then
  %><% response.write "<a href=""?AttPath="&arrUpFolder&"""><img src=images/fanhui.gif></a><br>"%>
  <%else%><img src=images/fanhui1.gif>  <%end if%></td>
          <td width="10%" align="left"><a href="cjwjj.asp"><img src="images/xinjianwenjan.gif" alt="" width="110" height="26" /></a></td>
          <td width="61%"><a href="scwj.asp"><img src="images/shangchuan.gif" alt="" width="53" height="26" /></a></td>
          <td width="3%">&nbsp;</td>
        </tr>
      </table></td>
  </tr>
  <tr>
    <td bgcolor="#ff9600" colspan="5"height="1"></td>
  </tr>
  <tr>
    <td height="30" align="left" valign="middle">
      <input type="checkbox" name="checkbox" id="checkbox" />
      类型 名称</td>
  </tr>
  <tr>
    <td bgcolor="#ff9600" colspan="5"height="1"></td>
  </tr>


<%


for each ArrFolder in ArrFolders

 %> <tr><td height="25"><% response.write "<input name=""folders"" type=""checkbox"" value="""&AttPath&"/"&ArrFolder&"""/>&nbsp;<img src=images/wenjianjia.gif>&nbsp;<a href=""?AttPath="&AttPath&"/"&ArrFolder&""">"&ArrFolder&"</a><br>"%></td></tr><%
next

for each Arrfile in Arrfiles
%><tr><td height="25"><%response.write "<input name=""Files"" type=""checkbox"" value="""&AttPath&"/"&Arrfile&"""/>&nbsp;<a href="""&AttPath&"/"&Arrfile&""" target=""_blank"">"&Arrfile&"</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"&getFileInfo(AttPath&"/"&Arrfile)(0)&" &nbsp;&nbsp;| &nbsp;&nbsp;"&getFileInfo(AttPath&"/"&Arrfile)(2)&"&nbsp;&nbsp; | &nbsp;&nbsp;"&getFileInfo(AttPath&"/"&Arrfile)(3)&"</p>"%></td>
  </tr><%
next

%><tr><td bgcolor="#ff9600" colspan="5"height="1"></td></tr><tr><td height="30">
 
<input type="button" value="全选" οnclick="checkAll()"/>
<input type="reset" name="button" id="button" value="取消" />
<input type="submit" name="Submit" value="删除所选的文件或文件夹"/>
</td>
  </tr>
  <tr><td bgcolor="#ff9600" colspan="5"height="1"></td></tr>
</table>
</form>

 

 

 

 

'-----------------------------------------------------------------------------------------delf.asp

<!--#include file="function.asp" -->
<%if Request.Cookies("venshop")("user_name")<>"" then%>
<%
if Request.form("whatdo")="DelFiles" then
  dim getFolders,getFiles,getFolder,getFile,getFolderCount,getFileCount
  Dim FSODel
  Set FSODel=Server.CreateObject("Scripting.FileSystemObject")
  getFolders=split(Request.form("folders"),", ")
  getFiles=split(Request.form("Files"),", ")
  getFolderCount=0
  getFileCount=0
  for each getFolder in getFolders
   if len(getPathList(getFolder)(1))>0 then
    response.write getFolder&"文件夹内含有文件,无法删除!<a href=# οnclick=history.go(-1)>返回</a>"
      response.end
   end if
   if FSODel.FolderExists(Server.MapPath(getFolder)) then
   FSODel.DeleteFolder Server.MapPath(getFolder),true
   getFolderCount=getFolderCount+1
   end if
  next
  for each getFile in getFiles
   if FSODel.FileExists(Server.MapPath(getFile)) then
   FSODel.DeleteFile Server.MapPath(getFile),true
   getFileCount=getFileCount+1
   end if
  next
  response.write ("有 "&getFileCount&" 文件, "&getFolderCount&" 个文件夹被删除!")
  response.write"<script language=javascript>alert('成功删除!');window.location='keshikongjian.asp';</script>"
  response.write"javascript:history.go(-1)</script>"
  response.end
end if
%>
<%else%>
<%response.write"<script language=javascript>alert('对不起您还未登录!或您权限不够!');window.location='ksyx.asp';</script>"
response.write"javascript:history.go(-1)</script>"
response.end%>
<%end if%>

 

 

'-------------------------------------------------------------------------------------------------function.asp

<%
function getPathList(pathName) '获得路径的文件信息
dim FSO,ServerFolder,getInfo,getInfos,tempS
 getInfo=""
        Set FSO=Server.CreateObject("Scripting.FileSystemObject")
        Set ServerFolder=FSO.GetFolder(Server.MapPath(pathName))
            Dim ServerFolderList,ServerFolderEvery
            Set ServerFolderList=ServerFolder.SubFolders
            tempS=""
            For Each ServerFolderEvery IN ServerFolderList
        getInfo=getInfo&tempS&ServerFolderEvery.Name
        tempS="*"
            Next
      getInfo=getInfo&"|"
            Dim ServerFileList,ServerFileEvery
            Set ServerFileList=ServerFolder.Files
            tempS=""
            For Each ServerFileEvery IN ServerFileList
        getInfo=getInfo&tempS&ServerFileEvery.Name
        tempS="*"
            Next
    Set FSO=Nothing
    getInfos=split(getInfo,"|")
    getPathList=getInfos
end function

function getFileInfo(FileName) '获取文件信息
 dim FSO,File,FileInfo(3)
 Set FSO=Server.CreateObject("Scripting.FileSystemObject")
 if FSO.FileExists(Server.MapPath(FileName)) then
  Set File=FSO.GetFile(Server.MapPath(FileName))
  FileInfo(0)=File.Size
  if FileInfo(0)/1000>1 then
   FileInfo(0)=int(FileInfo(0)/1000)&" KB"
  else
   FileInfo(0)=FileInfo(0)&" Bytes"
  end if
  FileInfo(1)=lcase(right(FileName,4))
  FileInfo(2)=File.DateCreated
  FileInfo(3)=File.Type
 end if
  getFileInfo=FileInfo
 Set FSO=Nothing
end function

function bc(t,s)
 dim tl,sl,i
 bc=false
 sl=len(s)
 tl=len(t)
 if tl< sl then bc=true:exit function
 for i=1 to sl
 if mid(t,i,1)<>mid(s,i,1) then bc=true:exit function
 next
end function
%>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VB中使用FSo(File System Object)对象可以很方便地搜索文件并进行相关操作。通过FSo对象,我们可以使用其属性和方法来搜索指定目录下的文件,也可以搜索文件夹下的子文件夹中的文件。 使用FSo搜索文件的步骤如下: 1. 创建FSo对象:可以通过下面的代码创建一个FSo对象: Dim fso As Object Set fso = CreateObject("Scripting.FileSystemObject") 2. 搜索文件:使用FSo的GetFolder方法指定文件夹路径,再使用其Files属性来获取该文件夹下的文件集合。可以通过下面的代码获取目录下的所有文件: Dim folder As Object Set folder = fso.GetFolder("C:\MyFiles") MsgBox folder.Files.Count 上述代码中,我们首先获取C:\MyFiles文件夹对应的FSo目录对象,然后获取该目录下的所有文件集合。最后,我们可以使用Count属性获取该文件夹中的文件数目。 3. 搜索子文件夹中的文件:如果想要搜索子文件夹中的文件,可以使用FSo的SubFolders属性来获取子文件夹集合,再递归查找每个子文件夹中的文件。下面的代码演示了如何搜索指定目录及其子目录中的所有文件Function SearchFiles(ByVal folder As Object) As Long Dim count As Long count = folder.Files.Count Dim subFolder As Object For Each subFolder In folder.SubFolders count = count + SearchFiles(subFolder) Next SearchFiles = count End Function 使用该函数,我们可以传入FSo目录对象,返回该目录及其子目录中的文件数。 总之,FSo提供了强大的搜索功能,可以满足VB中搜索文件的多种需求。可以灵活地使用FSo的属性和方法,实现快速、高效的文件搜索。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值