So I have a possibly simple question that I can not find the answer to.
I am writing a VBScript that will move a subfolder from one folder to another. When moving I want to append the date onto the subfolders name. I have everything working, except I can not figure out how to convert the date to a string so that it can be added t开发者_运维百科o the folder name.
curDate = Month(Date) + "_" + Day(Date) + "_" + Year(Date) + "_" + Time
If fs.FolderExists(rsltFldrPath) Then
'Grab folder and Subfolders
Set fldr = fs.GetFolder(rsltFldrPath)
Set subFldr = fldr.SubFolders
For each folder in subFldr
moveTo = archFldrPath + "\" +folder.name + curDate
fs.MoveFolder folder, moveTo
Next
End If
Any help is appreciated. Thanks!
The string concatenation operator in VBScript is "&", so a quick fix would be:
>> curDate = Month(Date) & "_" & Day(Date) & "_" & Year(Date) & "_" & Time
>> WScript.Echo curDate
>>
7_22_2011_5:32:55 PM
If you specify the exact desired result, I'm willing to propose a better way to achieve your goal.
Ekkehard.Horners answer won't work as Time needs to be reformatted to remove the colons (:) Folders cannot have colons.
Try;
curDate = Month(Date) & "_" & Day(Date) & "_" & Year(Date) & "_" & Time
Replace(CurDate,":","-")
I'm sure there's a more succinct answer but that will work also padding shouldn't be an issue as the underscores will negate duplicate possibilities.
I wanted to comment but don't have enough rep.
精彩评论