티스토리 뷰


Qt 날짜 관련 함수

QDate, QDateTime 가 존재한다.

  • QDate: 연월일
  • QDateTime: 연월일, 시분초

현재날짜 구하기

  • currentDate() 라는 함수가 있다.
예제)
QDate stCurrentDate = QDate::currentDate();

UTC 관련

  • 서울은 UTC 기준으로 +9 이다.
  • QDateTime::currentDateTimeUtc() 라는 함수가 존재한다.

예제)

#define UTC_TIME_ASIA_SEOUL    (9 * 60 * 60)   // 9h

QDateTime stCurrentDateTime;
stCurrentDateTime = QDateTime::currentDateTimeUtc();

stCurrentDateTime = stCurrentDateTime.addSecs( UTC_TIME_ASIA_SEOUL );

이전/이후 날짜 계산하기

  • addDays(), addMonth(), addYears() 같은 add 시리즈가 있다.
  • 양수면 이후 날짜, 음수면 이전 날짜를 계산해서 리턴한다.

예제)

QDate stDate( 2016, 01, 27 );

QDate stDate( 2016, 01, 28 );
qDebug() << stDate;  // QDate("2016-01-28")


// 3일 이후 날짜를 구한다.
stDate = stDate.addDays( 3 );
qDebug() << stDate;  // QDate("2016-01-31")


// 다시 3일 이전 날짜를 구한다.
stDate = stDate.addDays( -30 );
qDebug() << stDate;  // QDate("2016-01-28")

날짜의 차이 구하기

  • QDate::daysTo(QDate ) 라는 함수가 존재한다.
  • 첫 번째 파라미터인 QDate가 기준이다.

예제)

QDate stFileDate;
QDate stCurrentDate;


// 현재 날짜 기준으로 파일 날짜와의 차이를 구함
int nDaysDelta = stFileDate.daysTo( stCurrentDate );

// nDayDelta == 7  이라면, 파일날짜가 7일전 인것이다.
// nDayDelta == 0  이라면, 파일날짜와 현재날짜가 같은 것이다.
// nDayDelta == -3 이라면, 파일날짜가 현재날짜보다 3일이후인 것이다.


저작자 표시 비영리 변경 금지
신고

댓글
댓글쓰기 폼