SYSTEMTIME st;
else if(vResult.vt == VT_DATE) //时间格式
{
VariantTimeToSystemTime(vResult.date, &st);
strh.Format("%2d",st.wHour);
strm.Format("%2d",st.wMinute);
strs.Format("%2d",st.wSecond);
str = strh+":"+strm+":"+strs;
}
我再ondraw()里面TEXTOUT 但是输出的不是 时间(03:30:15) 而是小数0.5423142;我再里查了下,时间的常规类型显示都是这样子的,但是我定义EXCEL的时候是设定的时间类型的。为什么会这个样子,谁可以帮我解决下!
else if(vResult.vt == VT_DATE) //时间格式
{
VariantTimeToSystemTime(vResult.date, &st);
strh.Format("%2d",st.wHour);
strm.Format("%2d",st.wMinute);
strs.Format("%2d",st.wSecond);
str = strh+":"+strm+":"+strs;
}
我再ondraw()里面TEXTOUT 但是输出的不是 时间(03:30:15) 而是小数0.5423142;我再里查了下,时间的常规类型显示都是这样子的,但是我定义EXCEL的时候是设定的时间类型的。为什么会这个样子,谁可以帮我解决下!
case VT_DATE: //日期型
{
DATE dt = var.date;
COleDateTime da = COleDateTime(dt);
strValue = da.Format("%Y-%m-%d %H:%M:%S");
}
break;
case VT_DECIMAL: //小数
//strValue.Format("%.8f", (double)var);
strValue.Format("%I64d", var.ullVal);
break;
CString strDateTime = dt.Format("%y-%m-%d %H:%M:%S"); // 2009-08-15 15:33:21
pDC->TextOut(100, 100, strDateTime);