как получить дату недели с помощью autohotkey - PullRequest
0 голосов
/ 28 января 2020

я использую autohotkey для работы с датой, мне нужно поймать день недели a go

пример

если сегодня 28-е, то мне нужно взять 21-е прошлой недели

календарь

в следующем сценарии я беру текущую дату

FormatTime, date, , dd/MM/yyyy
MsgBox %date%

Я даже думал о логи c, чтобы вычесть текущий день, вычтите на 7, что займет день недели go. Мне нужна помощь для создания лучшего сценария

28 - 7 = 21

, если кто-нибудь может мне помочь, спасибо :)

Ответы [ 2 ]

1 голос
/ 28 января 2020

Простое вычитание чисел было бы плохо, если вы столкнулись с изменением между месяцами.
Для этого пришлось бы создавать собственные логики c.

К счастью, оператор += AutoHotkey поддерживает математика даты / времени .
Так что это все, что вам нужно:

;we're starting off the date1 variable as blank,
;which means the current time will be used.
date1 += -7, days 
FormatTime, finalDate, % date1, dd/MM/yyyy ;format the result to our desired format
MsgBox, % finalDate
0 голосов
/ 28 января 2020

Я так и сделал

FormatTime, date_, , dd
sub += date_-7
FormatTime date, , /MM/yyyy
MsgBox,%sub%%date%
...