请问各位大侠,在VC中有没有将时间例如“1900/1/1”转换为long型或者是double型变量的函数?就像VB中的datevalue?

解决方案 »

  1.   

    COleDateTime dt;
    dt.ParseDateTime("1900/1/1");
    COleDateTime是一种通用格式,长度好象就是double,可以直接进行数据库存取操作。可以直接与COleDateTimeSpan变量加减操作。如:
    COleDateTime dtToday = COleDateTime::GetCurrentTime() + COleDateTimeSpan(1,0,0,0);
    //可以得到明天的值。
      

  2.   

    SystemTimeToVariantTime
    CDateTime
    COleDateTime
      

  3.   

    SystemTimeToVariantTime
    CDateTime
    COleDateTime
      

  4.   

    #include <iostream>
    #include <time.h>using namespace std;int main(void)
    {
    char cstr[] = "2000/01/01";
    int nYear,nMon,nDay;
    struct tm t;
    time_t tt;

    memset(&t,0,sizeof(struct tm));
    sscanf(cstr,"%d/%d/%d",&nYear,&nMon,&nDay);

    t.tm_year = nYear - 1900;
    t.tm_mon = nMon;
    t.tm_mday = nDay;
    tt = mktime(&t);

    cout<<tt<<endl;

    return 0;
    }