Board logo

标题: [问题求助] vbs如何批量重命名指定扩展名/后缀的文件? [打印本页]

作者: mingjianko    时间: 2016-4-26 11:45     标题: vbs如何批量重命名指定扩展名/后缀的文件?

本帖最后由 pcl_test 于 2016-4-26 19:51 编辑

1号文件夹里面有1千个PNG图片文件,1千个TXT文件,原始文件名是1,到1000,

只针对PNG格式的文件重命名,该如何写
用VBS如何按照文件名数字顺序重命名,重命名后的文件名是0001,0002,0003,0004到1000
作者: mingjianko    时间: 2016-4-26 14:07

这个问题好像没人会啊,哈哈,
作者: codegay    时间: 2016-4-26 14:18

是你自己不会。不要推断到别人身上。
作者: Nsqs    时间: 2016-4-26 14:44

本帖最后由 Nsqs 于 2016-4-27 11:22 编辑

回复 1# mingjianko
  1. dim fso,Wsc,WshPath,Folder
  2. set fso=CreateObject("scripting.filesystemobject")
  3. Set Wsc=CreateObject("wscript.shell")
  4. WshPath=Fso.getparentfoldername(wsh.scriptfullname)
  5. Wsc.CurrentDirectory = WshPath
  6. set folder=fso.getfolder("1号")
  7. for each List in folder.files
  8. ext=fso.getextensionname(list)
  9. if ext="txt" then
  10. name=fso.getbasename(list)
  11. x=x mod 1000+10001:str_mid=mid(x,2)
  12. if name<>str_mid then _
  13. filename=str_mid&"."&ext:_
  14. list.name=filename '改名
  15. end if
  16. next
复制代码
一点基础都没有,还要写vbs,上面代码'是不执行的部分,昨天是加了'而且我明确表示是改名了
作者: mingjianko    时间: 2016-4-26 20:30

我测试一下。好像没有效果
作者: WHY    时间: 2016-4-27 08:42

  1. strSrcDir = "D:\test"
  2. Set fso=CreateObject("Scripting.FileSystemObject")
  3. For i = 10001 To 11000
  4.     strSrcFile = strSrcDir & "\" & (i - 10000) & ".jpg"
  5.     strDstFile = Mid(i, 2) & ".jpg"
  6.     If fso.FileExists(strSrcFile) Then fso.GetFile(strSrcFile).Name = strDstFile
  7. Next
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2