FSO操作示例(给初学者)

  把下面代码存到一个ASP文件中即可,方便管理服务器上的文件

  <title>http://bbs.asp2004.net 制作:小灰 QQ:103895</title>

  <meta http-equiv="Content-Type" content="text/html; charset=gb2312">

  <style type="text/css">

  <!--

  a:link {

  font-size: 9pt;

  }

  a:visited {

  font-size: 9pt;

  }

  a:hover {

  font-size: 9pt;

  }

  a:active {

  font-size: 9pt;

  }

  body {

  font-size: 9pt;

  margin-left: 0px;

  margin-top: 0px;

  margin-right: 0px;

  margin-bottom: 0px;

  line-height: 20px;

  }

  td {

  font-size: 9pt;

  line-height: 20px;

  }

  -->

  </style>

  <%

  action=request.QueryString("action")

  temp=split(request.ServerVariables("URL"),"/")

  url=temp(ubound(temp))

  chklogin()

  select case action

  case "logout"

  logout()

  case "delfile"

  delfile()

  case "savefile"

  savefile()

  case "editfile"

  fileedit()

  case "newfile"

  filenew()

  case "upload"

  upload()

  case "saveupload"

  saveupload()

  case "delfolder"

  delfolder()

  case "savefolder"

  savefolder()

  case "editfolder"

  editfolder()

  case "newfolder"

  newfolder()

  case else

  foldername=request.QueryString("foldername")

  filename=request.QueryString("filename")

  path=foldername

  if path="" then path=server.MapPath("./")

  ShowFolderList(path)

  end select

  Function ShowFolderList(folderspec)

  temp=request.ServerVariables("HTTP_REFERER")

  temp=left(temp,Instrrev(temp,"/"))

  temp1=len(folderspec)-len(server.MapPath("./"))-1

  if temp1>0 then

  temp1=right(folderspec,cint(temp1))

  elseif temp1=-1 then

  temp1=""

  end if

  tempurl=temp+replace(temp1,"\","/")+"/"

  Set fso = CreateObject("Scripting.FileSystemObject")

  upfolderspec=fso.GetParentfoldername(folderspec&"\")

  %>

  <a href="<%= url%>?action=newfolder&foldername=<%= folderspec%>">新建文件夹</a> | <a href="<%= url%>?action=newfile&filename=<%= folderspec&"\"%>">新建文件</a> | <a href="<%= url%>?action=upload">上传文件</a> | <a href="<%= url%>?foldername=<%= upfolderspec%>">向上</a> | <a href="file.asp">返回首页</a> | <a href="<%= url%>?action=logout">退出</a>

  <table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#6595D6">

  <tr bgcolor="#E4E8EF">

  <td width="64%"><div align="center">名称</div></td>

  <td width="7%"><div align="right">大小</div></td>

  <td width="6%"><div align="center">类型</div></td>

  <td width="15%"><div align="left">修改时间</div></td>

  <td width="8%"><div align="center">操作</div></td>

  </tr>

  <%

  '列出目录

  Set f = fso.GetFolder(folderspec)

  Set fc = f.SubFolders

  For Each f1 in fc

  %>

  <tr bgcolor="#E4E8EF" onMouseOut=this.bgColor='#E4E8EF'; onMouseOver=this.bgColor='#FFFFFF';>

  <td><a href="<%= url%>?foldername=<%= folderspec%>\<%= f1.name%>"><%= f1.name%></a></td>

  <td><div align="right"><%= f1.size%></div></td>

  <td><div align="center">文件夹</div></td>

  <td><div align="left"><%= f1.datelastmodified%></div></td>

  <td><a href="<%= url%>?action=editfolder&foldername=<%= folderspec&"\"&f1.name%>">修改</a> <a href="<%= url%>?action=delfolder&foldername=<%= folderspec&"\"&f1.name%>" onclick="{if(confirm('删除文件夹<<%= f1.name%>>么?')){return true;}return false;}">删除</a></td>

  </tr>

  <%

  Next

  '列出文件

  Set fc = f.Files

  For Each f1 in fc

  %>

  <tr bgcolor="#E4E8EF" onMouseOut=this.bgColor='#E4E8EF'; onMouseOver=this.bgColor='#FFFFFF';>

  <td><a href="<%= tempurl+f1.name%>" target="_blank"><%= f1.name%></a></td>

  <td><div align="right"><%= f1.size%></div></td>

  <td><div align="left"></div></td>

  <td><div align="left"><%= f1.datelastmodified%></div></td>

  <td><a href="<%= url%>?action=editfile&filename=<%= folderspec&"\"&f1.name%>">修改</a> <a href="<%= url%>?action=delfile&filename=<%= folderspec&"\"&f1.name%>" onclick="{if(confirm('删除文件<<%= f1.name%>>么?')){return true;}return false;}">删除</a></td>

  </tr>

  <%

  Next

  set fso=nothing

  %>

  </table>

  <%

  End Function

  '文件操作

  function delfile()

  filename=request.QueryString("filename")

  set fso=server.CreateObject("scripting.filesystemobject")

  fso.deletefile(filename)

  tempurl=url&"?foldername="&fso.GetParentfoldername(filename)

  set fso=nothing

  response.Redirect(tempurl)

  end function

  function savefile()

  filename=request.Form("filename")

  content=request.Form("content")

  filename1=request.Form("filename1")

  if request.ServerVariables("PATH_TRANSLATED")<>filename then

  set fso=server.CreateObject("scripting.filesystemobject")

  set f1=fso.opentextfile(filename,2,true)

  f1.write(content)

  f1.close

  if filename1<>"" and filename1<>filename then fso.deletefile(filename1)

  tempurl=url&"?foldername="&fso.GetParentfoldername(filename)

  set fso=nothing

  end if

  response.Redirect(tempurl)

  end function

  function filenew()

  filename=request.QueryString("filename")

  content=""

  fileform filename,content,filename1

  end function

  function fileedit()

  filename=request.QueryString("filename")

  filename1=request.QueryString("filename")

  set fso=server.CreateObject("scripting.filesystemobject")

  set f1=fso.opentextfile(filename,1,true)

  content=server.HTMLEncode(f1.readall)

  f1.close

  set fso=nothing

  fileform filename,content,filename1

  end function

  function fileform(filename,content,filename1)

  %>

  <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">

  <form name="form1" method="post" action="<%= url%>?action=savefile">

  <tr>

  <td><input name="filename1" type="hidden" value="<%= filename1%>"><input name="filename" type="text" value="<%= filename%>" style="width:100%"></td>

  </tr>

  <tr>

  <td><textarea name="content" wrap="VIRTUAL" style="width:100%;height:100%;font:Arial,Helvetica,sans-serif;" onKeyUp="style.height=this.scrollHeight;"><%= content%></textarea></td>

  </tr>

  <tr>

  <td><center><input type="submit" name="Submit" value="保存" style="width:200"><input type="reset" name="Submit2" value="重置" style="width:200"></center></td>

  </tr>

  </form>

  </table>

  <%

  end function

  '文件夹操作函数

  function delfolder()

  foldername=request.QueryString("foldername")

  set fso=server.CreateObject("scripting.filesystemobject")

  tempurl=url&"?foldername="&fso.GetParentfoldername(foldername)

  fso.deletefolder(foldername)

  set fso=nothing

  response.Redirect(tempurl)

  end function

  function savefolder()

  foldername=request.Form("foldername")

  foldername1=request.Form("foldername1")

  set fso=server.CreateObject("scripting.filesystemobject")

  if foldername1="" then

  set f=fso.createfolder(foldername)

  else

  fso.MoveFolder foldername1,foldername

  end if

  tempurl=url&"?foldername="&f

  set fso=nothing

  response.Redirect(tempurl)

  end function

  function newfolder()

  foldername=request.QueryString("foldername")&"\"

  formfolder foldername,foldername1

  end function

  function editfolder()

  foldername=request.QueryString("foldername")

  foldername1=request.QueryString("foldername")

  formfolder foldername,foldername1

  end function

  function formfolder(foldername,foldername1)

  %>

  <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">

  <form name="form1" method="post" action="<%= url%>?action=savefolder">

  <tr><td><input name="foldername1" type="hidden" value="<%= foldername1%>"><input name="foldername" type="text" value="<%= foldername%>" style="width:100%"></td></tr>

  <tr><td><center><input type="submit" name="Submit" value="保存" style="width:200"><input type="reset" name="Submit2" value="重置" style="width:200"></center></td></tr>

  </form>

  </table>

  <%

  end function

  function upload()

  %>

  <form action="file.asp?action=saveupload" method="post" enctype="multipart/form-data" name="form2">

  <div align="center">有待完成

  <input type="file" name="file" style="width:80%">

  <input type="submit" name="Submit" value="提交">

  </div>

  </form>

  <%

  end function

  function saveupload()

  '有待实现

  end function

  '登陆

  function chklogin()

  password=request.Form("password")

  if password="ok" then session("login")="login"

  if session("login")<>"login" then login

  end function

  function login()

  %>

  <form name="form1" method="post" action="<%= url%>?action=chklogin">

  <center>请输入密码:<input name="password" type="password"><input type="submit" name="Submit" value="登陆"></center>

  </form>

  <%

  response.End()

  end function

  function logout()

  session.Abandon()

  response.Redirect(url)

  end function

  %>