在第4、6位文件夹内所有文件名中插入“-”
Insert "-" in the name of all files in a folder at position 4 and 6
我在一个必须重命名的文件夹中得到了一堆 PDF。它们都是这样构建的:YYYYMMDD_Text.pdf
。系统是 Windows 7.
我想在日期之间插入一个 -
,所以文件看起来像:
YYYY-MM-DD_Text.pdf
.
这是我得到的,但它不起作用,我搜索了十几个线程但找不到解决方案:
Ordner = "C:\xte Stelle\Test Doku"
Set fso = CreateObject("Scripting.FileSystemObject")
Set Fld = fso.GetFolder(Ordner)
For i = 0 To UBound(Arr)
WScript.Echo i & vbTab & Arr(i)
Next
For Each File In Folder.Files
File.Name = Left(File.Name, 4) & "-" & Mid(File.Name, 6) & "-" & Mid(File.Name, 8)
End Sub
编辑:
这就是我现在得到的。我可以 运行 它并没有崩溃,但也不起作用。它什么都不做。有什么想法吗?
Ordner = "C:\xte Stelle\Test Doku"
Set fso = CreateObject("Scripting.FileSystemObject")
Set Fld = fso.GetFolder(Ordner)
Sub test
For Each File In Fld.Files
File.Name = Left(File.Name, 4) & "-" & Mid(File.Name, 5, 2) & "-" & Mid(File.Name, 7)
Next
End Sub
您的代码不仅不完整,而且完全错误。
- 您有一个
End Sub
没有相应的 Sub
。
- 您将文件夹对象分配给变量
Fld
,但随后从变量 Folder
. 枚举文件
- 您的第二个
For Each
循环缺少 Next
。
Mid
函数returns第三个参数定义的字符数从第二个参数定义的位置开始。如果省略第三个参数,则返回从第三个参数定义的位置到字符串末尾的子字符串。因此,您的文件名重建应如下所示:
File.Name = Left(File.Name, 4) & "-" & Mid(File.Name, 5, 2) & "-" & Mid(File.Name, 7)
注意: 如果将代码放入过程或函数中,则需要实际调用该 procedure/function 才能执行代码。
我在一个必须重命名的文件夹中得到了一堆 PDF。它们都是这样构建的:YYYYMMDD_Text.pdf
。系统是 Windows 7.
我想在日期之间插入一个 -
,所以文件看起来像:
YYYY-MM-DD_Text.pdf
.
这是我得到的,但它不起作用,我搜索了十几个线程但找不到解决方案:
Ordner = "C:\xte Stelle\Test Doku"
Set fso = CreateObject("Scripting.FileSystemObject")
Set Fld = fso.GetFolder(Ordner)
For i = 0 To UBound(Arr)
WScript.Echo i & vbTab & Arr(i)
Next
For Each File In Folder.Files
File.Name = Left(File.Name, 4) & "-" & Mid(File.Name, 6) & "-" & Mid(File.Name, 8)
End Sub
编辑:
这就是我现在得到的。我可以 运行 它并没有崩溃,但也不起作用。它什么都不做。有什么想法吗?
Ordner = "C:\xte Stelle\Test Doku"
Set fso = CreateObject("Scripting.FileSystemObject")
Set Fld = fso.GetFolder(Ordner)
Sub test
For Each File In Fld.Files
File.Name = Left(File.Name, 4) & "-" & Mid(File.Name, 5, 2) & "-" & Mid(File.Name, 7)
Next
End Sub
您的代码不仅不完整,而且完全错误。
- 您有一个
End Sub
没有相应的Sub
。 - 您将文件夹对象分配给变量
Fld
,但随后从变量Folder
. 枚举文件
- 您的第二个
For Each
循环缺少Next
。 Mid
函数returns第三个参数定义的字符数从第二个参数定义的位置开始。如果省略第三个参数,则返回从第三个参数定义的位置到字符串末尾的子字符串。因此,您的文件名重建应如下所示:File.Name = Left(File.Name, 4) & "-" & Mid(File.Name, 5, 2) & "-" & Mid(File.Name, 7)
注意: 如果将代码放入过程或函数中,则需要实际调用该 procedure/function 才能执行代码。