我试图在VBScript中创建一个sub来移动副本文件。我尝试了一些我在这里找到的不同方法,以及其他一些网站。我有以下工作。
dim SEVO_XML_PATH 'File path to Sevo xml file
dim SEVO_BACKUP 'File path for sevo's backup location
SEVO_XML_PATH="xml\Database.xml"
SEVO_BACKUP="backup\"
sub BackupSevo()
If FSO.fileExists(SEVO_XML_PATH)=true then
FSO.copyFile SEVO_XML_PATH, SEVO_BACKUP
else
msgbox("Sevo XML not found." & vbnewline & "Please contact Engineering.")
end if
end sub
但是我想将日期追加到文件名的末尾。当我添加要粘贴的文件的名称时,如so ...
backupName = "Database_" & date & ".xml"
FSO.copyFile SEVO_XML_PATH, SEVO_BACKUP & backupName
这给了我一条未找到的路径"错误。我已经尝试复制该文件,然后使用moveFile重命名它,但我得到了同样的错误。
FSO.copyFile SEVO_XML_PATH, SEVO_BACKUP
dim backupName
backupName = "Database_" & date & ".xml"
FSO.moveFile SEVO_BACKUP & "Database.xml", SEVO_BACKUP & backupName
我尝试了一种方法,我发现here创建一个对象来保存文件,然后使用name属性来更改名称。
set sevoXML=FSO.getFile(SEVO_XML_PATH)
sevoXML.copy SEVO_BACKUP
set sevoXMLBackup=FSO.getFile(SEVO_BACKUP & "Database.xml")
sevoBackup.name=backupName
但我收到错误"无效的程序调用或参数"在最后一行。
有关修复其中一种方法或使用其他方法的任何想法吗? 感谢
答案 0 :(得分:2)
date
返回以反斜杠分隔的日期。就像windows中的文件夹结构一样。所以你实际上是在尝试写入文件夹:
/backup/Database_06/29/2016.xml
并且您没有文件夹名称Database_06
和29
。格式化日期以将反斜杠更改为下划线或其他内容:
backupName= "Database_" & replace(date, "/", "_") & ".xml"