有一个CTime对象获得时间后,格式化成CString对象存入文本,如何把文本读出,从CString对象再转换成CTime值
需要将这个值显示在CDateTimeCtrl控件中。 问题点数:100、回复次数:8Top
1 楼zzb8188(国王)回复于 2002-11-08 11:23:14 得分 0
可以用format函数设置格式为"%H:%M:%".Top
2 楼zfive(醉码)回复于 2002-11-08 11:32:16 得分 0
用sscanf()这个被人遗忘的函数了Top
3 楼liugy(不知道的太多)回复于 2002-11-08 11:36:27 得分 0
其实你把CDateTimeCtrl控件关联成为CString 就可以了Top
4 楼asaili(阿土仔)回复于 2002-11-08 13:18:13 得分 0
存入数据库我知道用FORMAT... 我得格式 2002.11.8
现在主要是读出来在CDateTimeCtrl中显示Top
5 楼king2k(机器猫)回复于 2002-11-08 13:32:55 得分 0
建议用COleDateTime类,有一个COleDateTime::ParseDateTime()函数,使用很方便Top
6 楼zhaolaoxin()回复于 2002-11-08 13:37:42 得分 0
只能将年月日对应的字符读出后,转化为整数,再用CTime::CTime()生成CTime对象。Top
7 楼dai2255()回复于 2002-11-08 13:37:42 得分 100
如果你存入到数据库的datatime型字段,那么用ADO或DAO取出来后,直接转化成COleTime.如果使用序列化存入文件可以直接:
CTime t( 1999, 3, 19, 22, 15, 0 );
extern CArchive ar;
if( ar.IsLoading() )
ar >> t;
else
ar << t;
如果把它转化成自定义格式的字符串,再存入文件,那么从文件读出来后只能采用比较笨的方法还原了:
CString str("2002.11.08");
CTime t(atoi(str.Left(4)),atoi(str.Mid(5,2)),atoi(str.Right(2)),0,0,0);
Top
8 楼wj59(wj59)回复于 2002-11-08 13:38:32 得分 0
可以用
CTime(
int nYear,
int nMonth,
int nDay,
int nHour,
int nMin,
int nSec,
int nDST = -1
)来构造Top




