хочу конвертировать ColeDateTime в CTime - PullRequest
2 голосов
/ 14 октября 2011

Я читаю дату и время из базы данных в формате ColeDateTime. Я хочу преобразовать его в CTime, чтобы получить дату, месяц, год и время.

CString repDt; //**this will hold the datetime which i read from Database**

COleDateTime dt; 
//**my datetime format is mm/dd/yyyy.**

dt.ParseDateTime(repDt);   **//this line of code gives exception**

CTime t(dt.GetYear(), dt.GetMonth(), dt.GetDay(), dt.GetHour(),
        dt.GetMinute(), dt.GetSecond());
m_time=t.GetTime();

Пожалуйста, дайте мне какое-нибудь решение, как я могу это сделать?

Заранее спасибо.

Ответы [ 2 ]

4 голосов
/ 20 октября 2011

Конструктор CTime принимает структуры SYSTEMTIME и DBTIMESTAMP, поэтому оба они будут работать:

SYSTEMTIME st;
if (dt.GetAsSystemTime(st))
    t = CTime(st);

,

DBTIMESTAMP dbts;
if (dt.GetAsDBTIMESTAMP(dbts))
    t = CTime(dbts);
1 голос
/ 24 мая 2013

Пожалуйста, попробуйте это

COleDateTime dt=COleDateTime(2013, 12, 12,12,12,56);
CTime ctime;
SYSTEMTIME systime;
dt.GetAsSystemTime(systime);
ctime = CTime(systime);
...