如何将CString转换成CTime我从列表框控件中得到一个字符串str,其值是1970-1-1我想把此值转换成CTime类型的值,然后显示到DATE TIME PICKER框中显示我是新手 请大家帮忙  多谢!int a,b,c;
//sscanf(str.GetBuffer(str2.GetLength()),"%d-%d-%d",&a,&b,&c);(用这个也一样)
sscanf(str,"%d-%d-%d",&a,&b,&c);
CTime time(a,b,c);
dlg.m_OrderDate=time;dlg.m_OrderDate(是子对话框中DATE TIME PICKER的关联变量),str是从列表框空间中得到的值DATE TIME PICKER框中显示 1984-1-18  (实际是1970-1-1)  为什么啊?请大家帮忙 多谢

解决方案 »

  1.   

    COleDateTime   dt; 
    dt.ParseDateTime(str); 
    SYSTEMTIME   st; 
    dt.GetAsSystemTime(st); 
    CTime   tm(st); 
    dlg.m_OrderDate=tm;
    这个方法也是试了 有些可以正常是现实,但遇到1970-7-1程序就要报错
      

  2.   

    SYSTEMTIME ;
    COleDateTime ;
    ParseDateTime();
    GetAsSystemTime();
      

  3.   

    CTime::CTime
    CTime( );CTime( const CTime& timeSrc );CTime( time_t time );CTime( int nYear, int nMonth, int nDay, int nHour, int nMin, int nSec, int nDST = -1 );CTime( WORD wDosDate, WORD wDosTime, int nDST = -1 );CTime( const SYSTEMTIME& sysTime, int nDST = -1 );CTime( const FILETIME& fileTime, int nDST = -1 );