FSO操作示例(给初学者)

所属分类: 网络编程 / ASP编程 阅读数: 1067
收藏 0 赞 0 分享
把下面代码存到一个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
%>

更多精彩内容其他人还在看

asp知识整理笔记4(问答模式)

这是关于asp知识整理的最后一份笔记,希望大家仔细阅读。
收藏 0 赞 0 分享

ASP基础知识VBScript基本元素讲解

这篇文章主要介绍了ASP基础知识VBScript基本元素的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP编码和解码函数详解

这篇文章主要介绍了ASP编码和解码函数的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP显示页面执行时间的方法

这篇文章主要介绍了ASP显示页面执行时间的方法,在本地测试一下输出页面需要多少时间,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP基础入门第一篇(ASP技术简介)

本文将以 Active Server Pages 为中心,向你全面展示制作动态商业网站的步骤和技巧并通过大量的实例,让你在不断的理论和实践之中笑傲“网络”……
收藏 0 赞 0 分享

ASP基础入门第二篇(ASP基础知识)

这篇文章是ASP基础入门第二篇,第一篇展示了ASP动态网站设计的一些最基本的方法,相信通过实践各位对 ASP 已经有了最基本的了解,本文将进一步介绍ASP动态网站的一些基本技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP基础入门第三篇(ASP脚本基础)

通过前两篇的学习,相信各位已经对 ASP 的动态网站设计有了一个基本的概念和整体的印象。从本篇开始作者将从脚本语言的使用着手,由浅入深地带领大家探索 ASP 动态网站设计的真正奥秘。
收藏 0 赞 0 分享

ASP基础入门第四篇(脚本变量、函数、过程和条件语句)

大家在学习了脚本语言 VBScript 的变量、常量和过程的基本概念后,本期将继续向各位介绍 VBScript 的函数和语法。
收藏 0 赞 0 分享

ASP基础入门第五篇(ASP脚本循环语句)

在本文上两篇中,我们学习了脚本语言 VBScript 的变量、函数、过程和条件语句,本篇将继续给大家介绍 VBScipt 的循环语句,并对脚本语言在 ASP 中的应用加以总结。  
收藏 0 赞 0 分享

ASP基础入门第六篇(ASP内建对象Request)

从本篇开始作者从 ASP 内建对象着手,为大家详细剖析 ASP 的六个内建对象和各种组件的特性和方法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多