[FUNC]AHK有沒有日期運算?比如,20-DEC-2018 減2天

AHK有沒有日期運算?比如,20-DEC-2018 減2天  

回答網友提問如下:

;~功能:計算日期減法
;~作者:sunwind 1576157
;~最新版地址:https://blog.csdn.net/liuyukuan/article/details/84385196
 
;~ AHK有沒有日期運算?比如,20-DEC-2018 減3天  
MsgBox % 日期減法("20-DEC-2018",3)
;輸出  17-DEC-2018
Return
日期減法(str,int)
{
     VarContainingTimestamp:=ConvertDate(str)
     EnvAdd, VarContainingTimestamp, -%int%, days.
     FormatTime, VarContainingTimestamp, %VarContainingTimestamp%  L0x0409,dd-MMM-yyyy
     ;L0x0409是LCID, 參考 http://www.cnblogs.com/del/archive/2009/05/21/1486645.html
     VarContainingTimestamp:=Format("{:U}", VarContainingTimestamp)
     return VarContainingTimestamp
}



ConvertDate( Date ) {
  Static Jan:="01", Feb:="02", Mar:="03", Apr:="04", May:="05", Jun:="06", Jul:="07"
       , Aug:="08", Sep:="09", Oct:="10", Nov:="11", Dec:="12"
  StringSplit, D, Date, "-"
Return d3 monthnumber(d2) d1
}


monthnumber(imput) { 
	;~ 注意下面的字串構造很有技巧,每個單詞9個字母。用空格補空位。
   Static Months := "January  February March    April    May      June     July     August   SeptemberOctober  November  December" 
   Return SubStr(0 . (InStr(Months,imput)+8)//9, -1) 
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章