【问题标题】:How to rename an existing file in VB Script? [duplicate]如何在 VB 脚本中重命名现有文件? [复制]
【发布时间】:2017-07-27 15:30:03
【问题描述】:

我对 VB 脚本非常陌生。我正在尝试通过 VB 脚本重命名文件,有人可以帮我吗?

我刚刚尝试过,但没有成功。

Dim OldFile As String
Dim NewFile As String

OldFile = "C:\apache-tomcat-8.0.44\apache-tomcat-8.0.44\webapps\" & "\" & timeStampDir & "\" & "output_11.docx"

NewFile = "C:\apache-tomcat-8.0.44\apache-tomcat-8.0.44\webapps\" & "\" & timeStampDir & "\" & "output.docx"
        Name OldFile As NewFile

【问题讨论】:

    标签: vbscript


    【解决方案1】:

    使用FileSystemObject 并使用引用您要重命名的文件的对象的Name 属性。

    Dim OldFile, FSO, objFile
    Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
    
    OldFile = "C:\apache-tomcat-8.0.44\apache-tomcat-8.0.44\webapps\" + CStr(timeStampDir) + "\output_11.docx"
    
    Set objFile = FSO.GetFile(OldFile)
    objFile.Name = "output.docx"
    

    请记住,您需要正确转义 oldFile 变量中的所有空格,否则可能找不到该文件。

    【讨论】:

    • 谁对答案投了反对票?答案正确且有效....
    • @MithileshIndurkar 我也想知道是谁。答案是有效的。
    【解决方案2】:
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    
    objFSO.MoveFile OldFile, NewFile
    
    Set objFSo = Nothing
    

    【讨论】:

    • 我不想移动,它在同一个文件夹中。
    • 这只是重命名文件的最简单方法之一。它不会创建重复文件。试一试
    • 其实我不是 VB 背景,我试图声明 objFSO 像:Dim objFSO AS FileSystemObject 但得到错误。你能帮帮我吗?
    • Set objFSO = CreateObject("Scripting.FileSystemObject") 可以正常工作...为什么要像其他任何东西一样声明它。
    • 让我再试一次。
    猜你喜欢
    • 1970-01-01
    • 2012-09-09
    • 1970-01-01
    • 2014-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-07
    • 2016-06-13
    相关资源
    最近更新 更多