Vbscript如何用下一个符号命名一个txt文件:"test_date_time.log"

Vbscript how to name a txt file with the next notation: "test_date_time.log"

我尝试制作一个脚本来生成具有以下特征的日志文件: "test_date_time.log" 我的脚本是这样的:

设置 objfso = createobject("scripting.filesystemobject")

信息=“”&日期&“”&时间&“”

Set archivoog = objfso.createtextfile("C:\Users\gdlabrui\Desktop\Pick_folder\programs\vbs\ex1 searchAstringAndCopyingOnTxt\" & informacion & ".log",true)

但它似乎是一个错误,但我不知道如何跟进。

更新:错误:错误的文件名或编号

代码:800A0034

来源:Microsoft VBScript 运行时错误。

不建议使用 DATETIME 自动转换为字符串,因为格式仅由您当前的区域设置定义。如果脚本在具有不同区域设置的不同计算机上为 运行,则 DATE 和 TIME 的格式将发生变化。此格式中可能包含正斜杠 (/),这可能使您无法在单个命令中创建文件,因为它们代表尚不存在的子文件夹。

我建议您自己编写一个函数,该函数将以您可以 100% 控制的格式生成表示日期和时间的字符串。如果你愿意,你可以在下面拿这个。它将以 YYYYMMDD_HHMM 格式生成日期和时间。

Dim fso : Set fso = CreateObject("Scripting.FileSystemObject")

Set LogFile = fso.CreateTextFile("C:\Users\gdlabrui\Desktop\Pick_folder\programs\vbs\ex1 searchAstringAndCopyingOnTxt\" + CurrentDateTimeText() + ".log",true)

Function CurrentDateTimeText()

    CurrentDateTimeText = CStr(Year(Now))+ _
                          Right("0"+CStr(Month(Now)),2)+ _
                          Right("0"+CStr(Day(Now)),2) + "_" + _
                          Right("0"+CStr(Hour(Now)),2) + _
                          Right("0"+CStr(Minute(Now)),2)

End Function