2011-07-22 361 views
3

所以我有一個可能很簡單的問題,我找不到答案。VBScript將日期轉換爲字符串

我正在寫一個VBScript,將子文件夾從一個文件夾移動到另一個文件夾。移動時,我想將日期附加到子文件夾名稱上。我有一切工作,除了我不知道如何將日期轉換爲字符串,以便它可以添加到文件夾名稱。

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 

任何幫助表示讚賞。 謝謝!

回答

3

VBScript中的字符串連接運算符是「&」,所以速戰速決是:

>> curDate = Month(Date) & "_" & Day(Date) & "_" & Year(Date) & "_" & Time 
>> WScript.Echo curDate 
>> 
7_22_2011_5:32:55 PM 

如果指定確切期望的結果,我願意提出一個更好的方式來實現你的目標。

+0

嗯......以及我的主要目標是有一個名爲「結果」的文件夾最終被稱爲「Results_Month_Day_Year_Time」因此,當我移動它沒有其他可能覆蓋的文件。 – user856354

+0

「結果」之後的空間情況如何?你想要PM/AM嗎?日期和月份是否應該填充爲零? –

2

Ekkehard.Horners答案將無法正常工作,因爲時間需要重新格式化以移除冒號(:)文件夾不能有冒號。

嘗試;

curDate = Month(Date) & "_" & Day(Date) & "_" & Year(Date) & "_" & Time 

Replace(CurDate,":","-") 

我敢肯定有一個更簡潔的答案,但也將努力填補不應該是一個問題,因爲下劃線將否定重複的可能性。

我想發表評論,但沒有足夠的代表。