用MFC写个写一个图书管理系统,CTime类型求助
发布网友
发布时间:2024-10-24 15:32
我来回答
共1个回答
热心网友
时间:2024-10-31 18:00
vc中的CTime类型数据因为自身长度不够,与Datetime类型的数据不能兼容。导致数据库导入datetime类型数据时,只显示“1970-1-1”这个时间。
解决办法是,现将数据库中的datetime类型数据导入成COleTime类型,然后在vc中转换为CTime类型,此时时间可以正常显示。示例代码如下:
COleDateTime oletime;//声明ole对象,用于存放数据库中的datetime值
oletime.m_dt = ado.pRecordset->GetCollect("Birth");//将数据库中“Birth”对象导入
SYSTEMTIME systime; //声明systemtime对象(CTime数据结构)
VariantTimeToSystemTime(oletime.m_dt, &systime); // 将oletime值赋值给systime对象
CTime tm(systime); //初始化CTime对象
pDoc->cItemInfo[i].Birth = tm.GetTime() ;//赋值,其中Birth对象类型是CTime