我的AutoIt脚本不起作用。它应按实际日期和时间重命名文件。
#include <Date.au3>
#include <File.au3>
FileMove("C:\file.csv", "C:\file" & _NowDate() & _NowTime() & ".csv")
没有语法错误,但文件未重命名。我认为Windows会拒绝:
或/
之类的符号。如何将时间转换为以下格式:hh-mm-ss_dd-mm-yyyy
?
答案 0 :(得分:1)
“ ... ... 如何以以下格式转换时间:hh-mm-ss_dd-mm-yyyy?”
根据this forum post(因为没有要转换的内容):
Global Const $g_sPathFile = 'C:\file.csv'
Global Const $g_sFormat = '%s-%s-%s_%s-%s-%s'
Global Const $g_sTime = StringFormat($g_sFormat, @HOUR, @MIN, @SEC, @MDAY, @MON, @YEAR)
Global Const $g_sNameNew = StringReplace($g_sPathFile, '.', $g_sTime & '.', -1)
FileMove($g_sPathFile, $g_sNameNew)
yyyymmddhhmmss
-format符合字符串排序(通过Windows资源管理器显示时间顺序)。
答案 1 :(得分:0)
您可以在线清理输出
#include <Date.au3>
FileMove("file.csv", "file" & stringreplace(_NowTime(5) , ":" , "-") & "_" &
stringregexpreplace(_NowCalcDate() , "(\d\d\d\d)/(\d\d)/(\d\d)" , "$3-$2-$1") &
".csv")