Board logo

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

作者: mdzzx    时间: 2023-3-29 15:39     标题: 【已解决】求助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
复制代码

作者: czjt1234    时间: 2023-3-29 15:54

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

你修改后想改成啥模样?
作者: czjt1234    时间: 2023-3-29 16:09

  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
复制代码

作者: mdzzx    时间: 2023-3-29 17:23

回复 3# czjt1234


    谢谢大佬 太牛了  我的代码简直太繁琐 而且还有错误  效率低下
作者: jyswjjgdwtdtj    时间: 2023-3-29 17:52

嗯 用shell.application应该会快一点 不过也不会快多少
作者: mdzzx    时间: 2023-3-29 20:01

回复 5# jyswjjgdwtdtj


    谢谢谢谢 我试试




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