时间转换问题,系统得到的DWORD的时间类型从00:00:00, January 1, 1970流过的秒,如何得到2005-12-28 23:56:59 时间转换问题,系统得到的DWORD的时间类型从00:00:00, January 1, 1970流过的秒,如何得到2005-12-28 23:56:59 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 系统的到时间SYSTEMTIME st;GetSystemTime(&st); 转化CTime t( 1999, 3, 19, 22, 15, 0 ); // 10:15 PM March 19, 1999CString s = t.Format( "%A, %B %d, %Y" ); 系统得到的DWORD的时间类型==你用哪个函数得到的系统时间啊?转换成COleDateTime或者CTime类型后,可以用这些类的Format函数得到时间的字符串格式。 是啊,你用什么函数得到的结果?如果是用time(NULL)这样的函数的话也是从1900年1月1日0:00:00开始的吧?!如果是的话,见这里:http://community.csdn.net/Expert/topic/4461/4461785.xml?temp=.4838526 http://ldfren.bosinet.com/download/linux_c/function/04.html#linuxc39Linux Cfunction()参考手册其中有你能用到的 从00:00:00, January 1, 1970 流过的秒从一个值比如 1135775424,如何把它转成类似2005-12-28 23:56:59 ,真的不会那些复杂的时间类型转换,谢谢 #include <time.h>#include <afx.h>#include <iostream.h>void main(){ CString result; CTime tm(1970,1,2,0,0,0); //这里不知为何不能初始化成1月1日,只好在后面减回一天 tm+=1135775424; result.Format("%d-%d-%d %d:%d:%d", tm.GetYear(), tm.GetMonth(), tm.GetDay()-1, tm.GetHour(), tm.GetMinute(), tm.GetSecond() ); cout<<result<<endl;} 试了一下,发现只要是1970以前的年份(包括1970年)日期初始化成1月1日都会出错,上面的代码其实也有问题,如果结果是X月1日的话再减1,得到的日期就有问题了,改成如下就保险了:#include <time.h>#include <afx.h>#include <iostream.h>void main(){ CString result; CTime tm(1970,1,2,0,0,0); //这里只好初始化成1月2日,然后在后面减回一天 tm+=(1135775424-86400); //改成在这里减去86400秒,即一天整 result.Format("%d-%d-%d %d:%d:%d", tm.GetYear(), tm.GetMonth(), tm.GetDay(), tm.GetHour(), tm.GetMinute(), tm.GetSecond() ); cout<<result<<endl;} 高分求解:视图分割后程序运行只一闪就没了 如何用VC显示预览一个比较大的图形(jpg或bmp) UDP开发时碰到的问题 如何得到系统或者硬件的特征码 关于BeginPaint的疑问 简单问题 十万火急,关于线程的几个问题! 紧急求救!关于PreSubclassWindow\SubclassWindow用法: 开线程接收串口数据时拔掉串口线再连上,数据接收有误怎么回事 图片上显示多行文字失败 小弟刚开始学习VC,希望各位前辈能进来指导一下,使小弟少走一些弯路!谢谢 如果没有人解决我的问题.怎么给分??/
SYSTEMTIME st;
GetSystemTime(&st); 转化
CTime t( 1999, 3, 19, 22, 15, 0 );
// 10:15 PM March 19, 1999
CString s = t.Format( "%A, %B %d, %Y" );
==你用哪个函数得到的系统时间啊?
转换成COleDateTime或者CTime类型后,可以用这些类的Format函数得到时间的字符串格式。
http://community.csdn.net/Expert/topic/4461/4461785.xml?temp=.4838526
Linux C
function()
参考手册
其中有你能用到的
#include <afx.h>
#include <iostream.h>void main()
{
CString result;
CTime tm(1970,1,2,0,0,0); //这里不知为何不能初始化成1月1日,只好在后面减回一天
tm+=1135775424;
result.Format("%d-%d-%d %d:%d:%d",
tm.GetYear(),
tm.GetMonth(),
tm.GetDay()-1,
tm.GetHour(),
tm.GetMinute(),
tm.GetSecond()
);
cout<<result<<endl;
}
#include <time.h>
#include <afx.h>
#include <iostream.h>void main()
{
CString result;
CTime tm(1970,1,2,0,0,0); //这里只好初始化成1月2日,然后在后面减回一天
tm+=(1135775424-86400); //改成在这里减去86400秒,即一天整
result.Format("%d-%d-%d %d:%d:%d",
tm.GetYear(),
tm.GetMonth(),
tm.GetDay(),
tm.GetHour(),
tm.GetMinute(),
tm.GetSecond()
);
cout<<result<<endl;
}