블로그는 나의 힘!
[ Programing ]/C++2019. 12. 4. 10:59

1. GetLocalTime, mkTime 이용.

#include <time.h>

 

void main()
{
     SYSTEMTIME sCurrentSysTime;

 

     // 현재 시간 SYSTEMTIME 담기.
     ::GetLocalTime( &sCurrentSysTime );

 

     tm atm;
     tmTime1.tm_sec = sCurrentSysTime.wSecond;
     tmTime1.tm_min = sCurrentSysTime.wMinute;
     tmTime1.tm_hour = sCurrentSysTime.wHour;
     tmTime1.tm_mday = sCurrentSysTime.wDay;
     tmTime1.tm_mon = sCurrentSysTime.wMonth - 1;
     tmTime1.tm_year = sCurrentSysTime.wYear - 1900;
     tmTime1.tm_isdst = 0;

 

     // 현재 시간 중 00:00 기준으로 필요 하다면 시, 분, 초 = 0
     //tmTime1.tm_hour = 0;
     //tmTime1.tm_min = 0;
     //tmTime1.tm_sec = 0;

 

     // 현재 시간 time_t 담기.
     time_t m_time = mktime(&atm);
     printf( "Test : %d \n", m_time );
     /* Test : 1325689200 */
}

 

 

 

2. COleDateTime 객체 이용.

//#include <time.h>
//#include <atltime.h>

 

//#include <mmsystem.h>

//#pragma comment(lib, "winmm.lib")
// DWORD dwNow = timeGetTime();

 

#include <ATLComTime.h>


void main()
{
     // 현재 시간 구하기.
     DOUBLE mNowDate = COleDateTime::GetCurrentTime();

 

     // Date 객체에 담기.
     COleDateTime Date( mNowDate );

 

     DWORD dwDate = ( Date.GetYear() * 10000 ) + ( Date.GetMonth() * 100 ) + Date.GetDay();
     DWORD dwTime = ( Date.GetHour() * 10000 ) + ( Date.GetMinute() * 100 ) + Date.GetSecond();

 

     // 현재 시간 중 00:00 기준으로 필요 하다면 시, 분, 초 = 0
     //COleDateTime CustomDate( Date.GetYear(), Date.GetMonth(), Date.GetDay(), 0, 0, 0 );

 

     printf( "Test Date YYYMMDD : %d \n", dwDate );
     /* Test Date YYYMMDD : 20191204 */
     printf( "Test Time HHMMSS : %d \n", dwTime );
     /* Test Time HHMMSS : 133217 */
}

 

 

 

Posted by Mister_Q