关于时间戳和QDateTime相互转换的有关问题(转)

1.toTime_t()把2014年12月19日10:24:40这样的QDateTime的格式转变为1418955940这样的时间戳

 

[cpp] view plain copy
 
  1. QDateTime time = QDateTime::currentDateTime();   //获取当前时间  
  2. int timeT = time.toTime_t();   //将当前时间转为时间戳  

2.与toTime_t()功能相反的是fromTime_t(),把时间戳转为QDateTime类型。因为这个方法是静态的,所以使用方法为

[cpp] view plain copy
 
  1. QDateTime time = QDateTime::fromTime_t(timeT);  

另外再说一点,上次在做项目时我们并不会输入2014年12月19日10:24:40这样的格式,因为太繁琐了,测试需要很多次,每次都输入这样的格式太麻烦了,一般会输入20141219102440这样的格式,那么就需要字符串的拆分,因为程序是Qt的环境下,所以使用了mid(),C++下可以使用substr(),这两个函数功能相同

[cpp] view plain copy
 
  1. QDate date;  
  2. QTime time;  
  3. QString a = timeString.mid(0,8);  
  4. QString b = timeString.mid(8,6);  
  5. date = QDate::fromString(a,"yyyyMMdd");  
  6. time = QTime::fromString(b,"hhmmss");  
  7. return QDateTime(date,time);")  

这样就可以了,希望这点知识能帮助到你。

http://blog.csdn.net/u011288190/article/details/42737379

posted on 2017-03-30 10:20  xihong  阅读(1875)  评论(0编辑  收藏  举报

导航