永发信息网

VBS脚本批量重命名文件

答案:1  悬赏:10  手机版
解决时间 2021-03-20 09:24
  • 提问者网友:战魂
  • 2021-03-19 11:21
dim fso,fle,fles,fld,num
Set fso = CreateObject("Scripting.FileSystemObject")
set fld = fso.getfolder(".")
sub rename(fles)
num=0
for each fle in fles
ext=fso.GetExtensionName(fle)
ext=lcase(ext)
if ext="txt" then
num=num+1
fle.name=num&"."&ext
end if
next
end sub
rename fld.files

上面是我写的一个批量重命名文本文件的脚本,我想把当前文件夹下的文本文件按数字顺序进行重命名,比如说文件夹下有3个文本文件,重命名之后应该是1.txt 2.txt 3.txt 但实际却是1.txt 4.txt 5.txt 错在哪里,请高手指点
原因找到了,凡是通过复制得到的文件都被重命名了两次.
2 3 都是 1.txt的副本,被改了2次名,有什么办法可以解决?

我也觉得这个问题很奇怪,和操作系统有关系吗?我的系统是ghost_xp2电脑公司特别版_v7.0
最佳答案
  • 五星知识达人网友:荒野風
  • 2021-03-19 12:33
??我用文件副本重命名怎么就没问题呢?

那么你应该在for each fle in fles 后面加上一句:
wscript.echo fle
看看到底遍历了哪几个文件就知道了

程序本身没有问题,你的文件夹下一定有隐藏的Txt文本文件

把资源管理器设置为显示所有文件,会显示出隐藏的3.txt和2.txt
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯