FSO操作示例(给初学者)

所属分类: 网络编程 / ASP编程 阅读数: 1145
收藏 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编程入门进阶(廿一):DAO SQL之建立数据库表

ASP编程入门进阶(廿一):DAO SQL之建立数据库表
收藏 0 赞 0 分享

ASP万用分页程序

这只是个asp小技巧类的东西,它虽然适合在每个不同文件名里调用这个函数,但是也是有前提的,下面让我们来仔细看看其中的原委
收藏 0 赞 0 分享

ASP项目中的公共翻页模块

ASP项目中的公共翻页模块
收藏 0 赞 0 分享

asp实现批量录入数据的实现

asp实现批量录入数据的实现
收藏 0 赞 0 分享

从文本文件中读取信息并存储入数据库

从文本文件中读取信息并存储入数据库
收藏 0 赞 0 分享

在ASP中使用均速分页法提高分页速度

在ASP中使用均速分页法提高分页速度
收藏 0 赞 0 分享

一些值得一看的代码asp

这篇文章主要介绍了一些值得一看的代码asp
收藏 0 赞 0 分享

3种不同的方法生成文件

3种不同的方法生成文件
收藏 0 赞 0 分享

校验算法与ASP程序

这篇文章主要介绍了校验算法与ASP程序
收藏 0 赞 0 分享

ASP抽取数据的执行效率

ASP抽取数据的执行效率
收藏 0 赞 0 分享
查看更多