Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > как из CString получить дату


Автор: visual 19.8.2003, 18:29
При работе с базу даных мне нужна преобразавать CString в CTime. Помогите пожалуста .

Автор: mr.DUDA 19.8.2003, 19:11
Вот так:
Код
// например, текущее время
CTime time = CTime::GetCurrentTime();
// преобр. в строку (см. ф-цию "strftime" для полного описания всех "%")
CString str = time.Format("%d.%m.%Y %H:%M:%S");
// получили  str == "19.08.2003 19:04:51"

Формат времени/даты - по твоему усмотрению.

Автор: mr.DUDA 19.8.2003, 19:26
упс надо было наоборот rolleyes.gif , исправляюсь:
Код
CString str = "25.04.2003 17:08:51";
int day, month, year, hour, minute, sec;
sscanf(str, "%d.%d.%d %d:%d:%d", &day, &month, &year, &hour, &minute, &sec);
CTime time(year, month, day, hour, minute, sec);

Первый пример можно использовать для проверки правильности второго hehe.gif

Автор: visual 19.8.2003, 19:42
спосиба за ответ
но мне нужна из [CString] в [CTime]
Код

CRecordset rs(m_pdb);
        CString s,Tip,r,dat1,dat2,dat3;
rs.GetFieldValue((short)0,s);

  for(short j=1;j<nFields;j++)
  {
   dat1=s;
   rs.GetFieldValue(j,s);
   dat2=s;
  }
/*мне нужна преабразавати dat1 , dat2 в CTime длеа тово штобы сравнить их как времеа
rs.MoveNext();



Автор: mr.DUDA 19.8.2003, 19:55
В моем втором примере из CString получаешь CTime.

Автор: visual 19.8.2003, 21:31
все палучилась
спасиба !!!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)