【问题标题】:Copying certain file extensions with VBS使用 VBS 复制某些文件扩展名
【发布时间】:2014-11-16 18:23:24
【问题描述】:

我正在尝试将具有特定扩展名的多个文件复制到不同的文件夹,这是我正在使用的代码,对 VBS 不太熟悉,但有人能指出我正确的方向吗?

dim filesys

Set objFSO = CreateObject("Scripting.FileSystemObject")
objStartFolder = "V:\Auto Audiowall Music Uploads\MUSIC\"

Set objFolder = objFSO.GetFolder(objStartFolder)
Wscript.Echo objFolder.Path

Set colFiles = objFolder.Files

For Each objFile in colFiles

If UCase(objFSO.GetExtensionName(objFile.name)) = "MP3" Then
objFSO.CopyFile "V:\Auto Audiowall Music Uploads\MUSIC\".objFile.Name.".mp3", "V:\Auto Audiowall     Uploads\New Music"
End If
If UCase(objFSO.GetExtensionName(objFile.name)) = "WAV" Then
objFSO.CopyFile "V:\Auto Audiowall Music Uploads\MUSIC\".objFile.Name.".wav", "V:\Auto Audiowall Uploads\New Music"
End If
Next

【问题讨论】:

  • 你的问题到底是什么?
  • 试图将多个具有特定扩展名的文件复制到不同的文件夹,代码不确定
  • 对不起,代码不行,有错误说找不到指定的文件,啊
  • 我想知道是否可以在一个副本语句中组合多个扩展。

标签: vbscript directory copying


【解决方案1】:

您在 CopyFile 函数中错误地连接了字符串。在 VBScript 中,您需要使用 & 符号 (&) 连接字符串。

不过,您可以使用 objFile.Path 而不是连接字符串来创建完整的源路径。

objFSO.CopyFile objFile.Path, "V:\Auto Audiowall Uploads\New Music\"

或者你可以只使用File对象的Copy函数:

objFile.Copy "V:\Auto Audiowall Uploads\New Music\"

在任何一种情况下,都以斜杠结束目标路径,以便 VBScript 知道您正在复制到 文件夹,而不是通过复制来创建新的文件

【讨论】:

猜你喜欢
  • 2011-06-08
  • 1970-01-01
  • 2016-07-31
  • 2016-09-02
  • 2019-06-08
  • 2021-07-22
  • 2017-05-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多