我有一個目錄中有很多需要重命名的文件。對於每個文件,我需要獲取文件名的前三個字符,並將它們移到文件名的末尾,然後再放到擴展名前。 所以003999999.wav會變成999999003.wav。將腳本的前3個字符移動到末尾的腳本
腳本語言並不重要。它只需要在Windows中工作。這似乎是一個簡單的腳本使用VBScript,我目前正在讀一些東西,但我想知道是否有人已經有這樣的工作。
編輯 - 所以我想我已經找到了如何做到這一點,除了獲取文件名字符的部分。這是我的。
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("C:\Directory")
For Each strFile in objFolder.Files
arrNames = Split(strFile.Name, ".")
If arrNames(1) = "mp3" Then
Set objstart = objFSO.Range(0,3)
Set objend = objFSO.Range(4,17)
strNewName = "C:\Directory\" & objend.Text & objstart.Text & ".mp3"
objFSO.MoveFile strFile.Path, strNewName
End If
Next
你做什麼,如果已被使用做名字? – stark
這絕對不會是一個基於這些文件最初如何獲取其名稱的問題。但是,因爲我知道這是不好的做法,只希望它永遠不會發生,如果發生這種情況,我會在文件名的末尾添加(1),(2),(3)。因此,如果999999003.wav存在,請使用999999003(1).wav。 但實際上,它永遠不會是一個問題。 – barry
你可以使用Scripting.FileSystemObject.GetExtensionName作爲文件擴展名(wav,mp3) –