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

本文介绍了一个使用ASP编写的简单文件管理器的功能和实现细节,包括文件和文件夹的显示、选择、删除等功能,并提供了核心代码片段。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

'--------------------------------------------------------------------------------------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" onsubmit="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="全选" onclick="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=# onclick=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
%>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值