오토핫키(AutoHotkey)는 Windows용 오픈 소스 스크립팅 언어로, 키보드 단축키, 조작 및 자동화를 통해 작업 효율성을 향상시키는 데 도움이 됩니다. 이 글에서는 오토핫키를 이용해 날짜 계산을 하는 방법에 대해 자세히 알아보겠습니다.
- 필요한 라이브러리 다운로드
먼저, 날짜 계산에 필요한 라이브러리를 다운로드해야 합니다. 아래 링크에서 "DateCalc.ahk" 파일을 다운로드하십시오.
https://github.com/Tigerlily-Is-Awesome/AutoHotkey-Date-Calculations
다운로드한 파일을 스크립트가 있는 폴더에 저장하십시오.
- 라이브러리 포함
스크립트 상단에 다음 코드를 추가하여 "DateCalc.ahk" 라이브러리를 포함시키세요.
#include DateCalc.ahk
- 날짜 계산 함수 사용
DateCalc 라이브러리는 다양한 날짜 계산 기능을 제공합니다. 몇 가지 주요 기능은 다음과 같습니다.
- 날짜 차이 계산
- 날짜 더하기 및 빼기
- 요일 확인
- 윤년 확인
예제 코드와 함께 각 기능을 살펴보겠습니다.
3.1. 날짜 차이 계산
두 날짜 간의 차이를 계산하려면 DateDiff 함수를 사용하십시오.
date1 := "2023-03-14"
date2 := "2023-04-14"
difference := DateDiff(date1, date2)
MsgBox, 두 날짜 간의 차이는 %difference% 일입니다.
3.2. 날짜 더하기 및 빼기
날짜에 일수를 더하거나 빼려면 DateAdd 함수를 사용하십시오.''
date := "2023-03-14"
daysToAdd := 30
newDate := DateAdd(date, daysToAdd)
MsgBox, %date%로부터 %daysToAdd% 일 후의 날짜는 %newDate% 입니다.
3.3. 요일 확인
특정 날짜의 요일을 확인하려면 DateGetWeekday 함수를 사용하십시오.
date := "2023-03-14"
weekday := DateGetWeekday(date)
MsgBox, %date%의 요일은 %weekday% 입니다.
``
3.4. 윤년 확인
특정 연도가 윤년인지 확인하려면 DateIsLeapYear 함수를 사용하십시오.
year := 2023
isLeap := DateIsLeapYear(year)
if (isLeap)
MsgBox, %year%년은 윤년입니다.
else
MsgBox, %year%년은 윤년이 아닙니다.
- 예제: 나이 계산기
오토핫키를 이용해 간단한 나이 계산기를 만들어 보겠습니다. 사용자로부터 생년월일을 입력받아 현재 나이를 계산하는 스크립트입니다.
#include DateCalc.ahk
InputBox, birthdate, 나이 계산기, 생년월일을 입력하세요. (예: 1995-01-01)
if ErrorLevel
return
currentDate := A_Now
currentYear := SubStr(currentDate, 1, 4)
currentMonth := SubStr(currentDate, 5, 2)
currentDay := SubStr(currentDate, 7, 2)
currentDate := currentYear "-" currentMonth "-" currentDay
years := DateDiff(birthdate, currentDate) // 365
MsgBox, 현재 나이는 %years%세 입니다.
위 스크립트를 실행하면 생년월일을 입력하는 대화 상자가 나타납니다. 올바른 날짜 형식으로 생년월일을 입력하면 현재 나이를 계산하여 출력합니다.
이 글에서는 오토핫키를 이용한 날짜 계산 방법에 대해 자세히 알아보았습니다. DateCalc 라이브러리를 사용하면 날짜 차이 계산, 날짜 더하기 및 빼기, 요일 확인, 윤년 확인 등 다양한 날짜 관련 작업을 손쉽게 수행할 수 있습니다. 이러한 기능들을 활용하여 여러분만의 스크립트를 만들어 보세요.
'AutoHotkey > AutoHotkey 초급' 카테고리의 다른 글
[Autohotkey 초급] 오토핫키에서 이미지서치하는 방법 (0) | 2023.03.09 |
---|---|
오토핫키 문자열 관련 내장함수 String 관련 함수정리 (0) | 2023.03.08 |
오토핫키로 특정 디렉토리의 파일 목록을 텍스트파일에 저장하는 방법 (0) | 2023.03.08 |