当前位置:编程学习 > asp >>

asp按修改日期 用fs的MoveFile方法移动文件

asp显示指定目录文件 判断时间 用fs的movefile 移动文件

<% 

dim myfilename()
redim myfilename(0)
set fs=Server.CreateObject("Scripting.FileSystemObject")


sub showfile(thefolder)

    set fd=fs.getfolder(thefolder)
    for each myfile in fd.files
        i=ubound(myfilename)
        myfilename(i)=fd.path & "\" & myfile.name 
        redim Preserve myfilename(i+1)
    next
    for each myfolder in fd.SubFolders       '递归记录其它文件夹的文件
        call showfile(fd.path & "\" & myfolder.name)
    next    
end sub


thefolder="F:\yizuotu.net\1"     '在此指定要搜索的文件夹绝对路径,要确定匿名用户有访问的权限,否则会出错

call showfile(thefolder)    '过程调用后,查到的文件名包括路径名保存在myfilename数组,
'共ubound(myfilename)个,下标分布在0至ubound(myfilename)-1;
'以下示例把找到文件显示出来
response.write("共找到" & ubound(myfilename) & "个文件<br>")


for i=0 to ubound(myfilename)-1

    Set f=fs.GetFile(myfilename(i))
    'd = #2020-06-25 00:00:00# '注意,时间比较大小的时候,用##号扩起来  '这种方式不太标准 
    'if f.DateLastModified > d then '这种方式不太标准
     
    d = "2020-06-25 00:00:00"
    if datediff("d",f.DateLastModified,d)>1 then
        response.Write(f.DateLastModified & "," & myfilename(i) & "<br>")
        file2 = replace(myfilename(i),"yizuotu.net\1","yizuotu.net\2")
        fs.MoveFile myfilename(i),file2    '用fs的MoveFile方法移动文件
    end if 
    set f=nothing
next  
set fs=nothing 
%>

f.DateCreated为创建时间

如果查找的文件夹过大,可能会提示错误:Active Server Pages 错误 'ASP 0113' 脚本超时
解决办法:在错误页面的asp开始区域写上Server.ScriptTimeOut=9999 即可。或可设置成稍小的参数。
如果文件夹还是太大,提示内存不足,这时候就要考虑用cmd命令来解决问题了。
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,