AutoHotkey/AutoHotkey 초급

[Autohotkey 초급]오토핫키에서 날짜를 계산하는 방법

JasonCloud 2023. 3. 15. 08:38
반응형

오토핫키(AutoHotkey)는 Windows용 오픈 소스 스크립팅 언어로, 키보드 단축키, 조작 및 자동화를 통해 작업 효율성을 향상시키는 데 도움이 됩니다. 이 글에서는 오토핫키를 이용해 날짜 계산을 하는 방법에 대해 자세히 알아보겠습니다.

  1. 필요한 라이브러리 다운로드

먼저, 날짜 계산에 필요한 라이브러리를 다운로드해야 합니다. 아래 링크에서 "DateCalc.ahk" 파일을 다운로드하십시오.

https://github.com/Tigerlily-Is-Awesome/AutoHotkey-Date-Calculations

다운로드한 파일을 스크립트가 있는 폴더에 저장하십시오.

  1. 라이브러리 포함

스크립트 상단에 다음 코드를 추가하여 "DateCalc.ahk" 라이브러리를 포함시키세요.

#include DateCalc.ahk
  1. 날짜 계산 함수 사용

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%년은 윤년이 아닙니다.
  1. 예제: 나이 계산기

오토핫키를 이용해 간단한 나이 계산기를 만들어 보겠습니다. 사용자로부터 생년월일을 입력받아 현재 나이를 계산하는 스크립트입니다.

#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 라이브러리를 사용하면 날짜 차이 계산, 날짜 더하기 및 빼기, 요일 확인, 윤년 확인 등 다양한 날짜 관련 작업을 손쉽게 수행할 수 있습니다. 이러한 기능들을 활용하여 여러분만의 스크립트를 만들어 보세요.

반응형