如何对某一个文件夹下的所有文件批量重命名

chunfeng007 2006-12-22 10:40:46
我想对我的上千个文件按照统一的规则进行重命名.请问如何实现?
...全文
2049 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
chunfeng007 2006-12-22
  • 打赏
  • 举报
回复
好了,谢谢名位.这就给分.
feillex 2006-12-22
  • 打赏
  • 举报
回复
不规则也可以的
用folder.files可以获取一个目录下的所有文件然后用循环进行重命名

<%
Dim fso,folders,files,f,i
Set fso = server.CreateObject("Scripting.FileSystemObject")
Set folders = fso.GetFolder(server.mappath("pic")) '获取pic文件夹对象
set files=folder.files '获取pic文件夹下所有文件
i=1
for each f in files
f.name="图片"&i&".jpg"
i=i+1
next

Set fso=Nothing
%>
lingyu1983 2006-12-22
  • 打赏
  • 举报
回复
这样应该可以的,不过要自己调试一下
<%@ Language=VBScript %>
<%
function bianli(path)
dim fso 'fso对象
dim objFolder '文件夹对象
dim objSubFolders '子文件夹集合
dim objSubFolder '子文件夹对象
dim objFiles '文件集合
dim objFile '文件对象

set fso=server.CreateObject("scripting.filesystemobject")
on error resume next
set objFolder=fso.GetFolder(path)'创建文件夹对象
set objSubFolders=objFolder.Subfolders'创建的子文件夹对象
for each objSubFolder in objSubFolders

nowpath=path + "/" + objSubFolder.name
Response.Write nowpath
set objFiles=objSubFolder.Files
i=10
for each objFile in objFiles
i=i+1
thefilename=nowpath&"/"&i&".txt"
'response.write(thefilename)
Response.Write "<br>---"
Response.Write objFile.name
filename=nowpath&"/"&objFile.name
'filename=path
fso.movefile filename,thefilename
response.write"<br>---"
response.write thefilename
next
Response.Write "<p>"
bianli(nowpath) '调用递归
next
set objFolder=nothing
set objSubFolders=nothing
set fso=nothing
end function
%>
<%
bianli("d:/bianli") '调用bianli()函数,这里是遍历d:
%>
webmm 2006-12-22
  • 打赏
  • 举报
回复
这种重命名,要考虑到你在服务器的权限,事实上,最好的解决方法,是增加文件时就已经按规则命名再保存在目录中,而不是重命名,因为你的旧文件的名字是否有规律?没有规律的话,你也没办法用代码来修改的。

如果已经存在于目录中,而要统一更名,楼主不妨用一些程序或软件来实现,比如acdsee6.0或其它文件管理工具。再已经更名后,保证新加文件的规则统一。
deknight 2006-12-22
  • 打赏
  • 举报
回复
楼上的,他的文件都不是有规律的名称
cow8063 2006-12-22
  • 打赏
  • 举报
回复
再搞过for each循环就行了
cow8063 2006-12-22
  • 打赏
  • 举报
回复
可以呀,
方法一:
<%
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.MoveFile server.mappath("tupian.jpg"),server.mappath("图片.jpg")
Set fso=Nothing
%>

方法二:
<%
Dim fso,f
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFile(server.mappath("tupian.jpg"))
f.name="图片.jpg"
Set f=Nothing
Set fso=Nothing
%>
deknight 2006-12-22
  • 打赏
  • 举报
回复
用FSO应该可以吧,暂时没思路。。。

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧