[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] 【已解决】求助VBS脚本更改文件后缀名

本帖最后由 mdzzx 于 2023-3-29 17:23 编辑

文件夹中有.jpg.mp4 等多种文件后缀名字  ,如何实现 1.一次一次选择2. 然后将.mp4 后缀的 改名字  3.同时 碰到其他类型文件自动跳过 继续执行4.  然后最后自动停止
我写的这段代码  只能说都是.mp4文件后缀的可以改名字  其他都不能实现  求助大佬怎么修改  代码是东拼西凑的
  1. Dim item,f,Flag
  2. Flag=0
  3. Set qt=CreateObject("WScript.Shell")
  4. Set fso = CreateObject("Scripting.FileSystemObject")
  5. Call filePath ("D:\aaa")
  6. Sub filePath(path)
  7. Set f = fso.GetFolder(path)
  8. qt.Run("D:\aaa")
  9. For Each item in f.Files
  10. If LCase(Right(item.name, 4)) = ".mp4" Then
  11.    Flag=1
  12. End If
  13. Do while Flag>0
  14. If LCase(Right(item.name, 4)) = ".mp4" Then
  15.     qt.SendKeys"{F2}"
  16.     WScript.Sleep(200)
  17.     qt.SendKeys"{RIGHT}"
  18.     WScript.Sleep(200)
  19.     qt.SendKeys"-2023-3-28"
  20.     WScript.Sleep(200)
  21.     qt.SendKeys"{ENTER}"
  22.     WScript.Sleep(500)
  23.     qt.SendKeys"{DOWN}"
  24. End If
  25. Loop
  26. Next
  27. Set qt=Nothing
  28. WScript.Quit
  29. Set f = Nothing
  30. Set fso = Nothing
  31. End Sub
复制代码
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

比如
陈慧娴-飘雪.mp4
赵雷-成都.mp4

你修改后想改成啥模样?

QQ 20147578

TOP

  1. s = "D:\aaa"    '指定一个文件夹
  2. Set oFSO = CreateObject("Scripting.FileSystemObject")
  3. Set oWshShell = CreateObject("WScript.Shell")
  4. oWshShell.CurrentDirectory = s
  5. For Each oFile In oFSO.GetFolder(s).Files
  6.     If LCase(Right(oFile.Name, 4)) = ".mp4" Then
  7.         oFile.Name = Left(oFile.Name, Len(oFile.Name) - 4) & "-2023-3-28.mp4"
  8.     End If
  9. Next
复制代码
1

评分人数


QQ 20147578

TOP

回复 3# czjt1234


    谢谢大佬 太牛了  我的代码简直太繁琐 而且还有错误  效率低下

TOP

嗯 用shell.application应该会快一点 不过也不会快多少

TOP

回复 5# jyswjjgdwtdtj


    谢谢谢谢 我试试

TOP

返回列表