热门文章
 
fso操作文件 实例函数
利用FSO取得BMP,JPG
FileSystemObje
fso使用:drive 读取
fso:folder 文件系
fso:file 文件对象
scripting.Text
ASP实现结构化列举并查看某
Adodb.Stream
ASP 批量文件改名
 推荐文章
 
asp无组件读取图片文件信息
限制(禁用)FSO组件的方法
fso使用例子:创建文件夹
fso:file 文件对象
fso应用中的几个小函数
ASP FSO相关的一些例子
fso的一些特殊功能
FSO读取网站系统使用空间的
使用FSO修改文件夹的名称
fso复制文件夹所有内容和删
FSO操作文件系统代码
稻香老农的无组件上传类(完整
一个基于Jscript和fs
无惧 无组件上传完整代码
asp静态模版技术之标签参数
无组件上传文件被杀毒软件误报
 
你现在的位置:您现在的位置是: 中国ASP>>ASP教程>>fso组件
使用FSO修改文件夹的名称

 

如何使用FSO修改文件夹的名称呢?

一个简单的函数:


<%
Function fldrename(nowfld,newfld)

nowfld=server.mappath(nowfld)
newfld=server.mappath(newfld)

Set fso = CreateObject("Scripting.FileSystemObject")
if not fso.FolderExists(nowfld) then
    response.write("需要修改的文件夹路径不正确或文件夹名称输入错误")
else
    fso.CopyFolder nowfld,newfld
    fso.DeleteFolder(nowfld)
end if
set fso=nothing

End Function
%>

 

总的来说就是拷贝当前文件夹的内容到新的文件夹中,然后再删除该文件夹内容,从而间接达到文件夹改名的目的。

这是一个偏执狂问题,因为修改文件夹名称,尤其是要修改名称的该文件夹内容是G量时,这个等待的时间相对FTP远程修改名称就有点不划算了。

有人说FSO可不可以直接修改文件夹名称呢?吾莫之。

应用该函数


<%call fldrename("ex01","ex02")%>


基本意思即将与程序执行文件在同一目录下的 ex01 文件夹名称修改为 ex02

下面是我在本地的测试情况通报:

1,本程序不消耗程序执行时间

2,执行1G文件夹间接改名时间需要50秒左右,其实也就是服务器端的文件复制转移时间

3,CPU消耗不算太高,30%左右

4,若在改名中间突然死机或掉电,则发生两种情况:

    a,新文件夹被建立初期(新文件夹并未建好),下次执行程序,会发生 错误类型:Microsoft VBScript 运行时错误 (0x800A003A)文件已存在,此时只能FTP删除新文件夹再执行(尝试使用FSO删除新文件夹并未凑效)。

    b,已经复制了部分文件,下次执行程序,自动覆盖已复制的文件夹内容,原文件夹内容依然存在。只有在复制完毕后,才会将原文件夹及其文件删除。

5,同时需要注意新文件夹的名称,避免和已有文件夹名称重名,当然也可用程序判断


<%
Function fldrename(nowfld,newfld)

nowfld=server.mappath(nowfld)
newfld=server.mappath(newfld)

Set fso = CreateObject("Scripting.FileSystemObject")
if not fso.FolderExists(nowfld) then
    response.write("需要修改的文件夹路径不正确或文件夹名称输入错误")
else
    if fso.FolderExists(newfld) then
        response.write("您命名的新文件夹名称已经存在")
    else
        fso.CopyFolder nowfld,newfld
        fso.DeleteFolder(nowfld)
    end if
end if
set fso=nothing

End Function
%>


6,若在修改文件夹名称的同时,文件夹内有数据库相关操作、音乐文件正在被播放,则显示为Microsoft VBScript 运行时错误 (0x800A0046)没有权限,主要即是删除原有文件夹出现的问题(音乐文件已被删除、但文件夹未能被删除)。只有FTP登录处理了。若本文件夹为全图片文件则可以运行成功。



相关标签:FSO组件 修改文件夹

相关信息:

asp Fso文件/文件夹操作类
fso操作文件 实例函数
利用FSO取得BMP,JPG,PNG,GIF文件信息
fso使用:drive 读取驱动器信息
fso:folder 文件系统
fso:file 文件对象
scripting.TextStream对象-fso读写文本
fso使用一个例子:遍历文件夹

 

中国ASP技术 ASP.ORG.CN 版权所有 2004-2008