`
tcspecial
  • 浏览: 896691 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

1970年至今秒数转化为时间

阅读更多

当前系统时间,一般取自1970年以来秒数值(int),各种编程语言提供API处理方式不同,特汇总。

 

1.C/C++

time_t seconds;

time(&seconds);

 

2.QT

QDateTime dt = QDateTime::currentDateTime();

dt.toTime_t();

 

3.C#

C#没有直接提供获取1970年秒值的API,可通过DateTime运算获取

// 不能用DateTime.Now,否则会有8h时差
int seconds = DateTime.UtcNow.Subtract(DateTime.Parse("1970-1-1")).TotalSeconds;
 
// 秒转化为字符串
DateTime dt = DateTime.Parse("1970-01-01 00:00:00").AddSeconds(seconds);
dt = dt.AddSeconds(8 * 60 * 60);     // +8h的时差
string time = dt.ToString("yyyy-MM-dd HH:mm:ss");

  

4. Java

// 获取秒

int seconds = System.currentTimeMillis()/1000;

 

// 秒转化为日期

Date dt = new Date();

dt.setTime( seconds*1000 );

 

5. Python

与C语言API基本一致

import time
time.time()	#返回的是一个浮点型数值
time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())	#时间字符串

 

 6. Shell

seconds=`date +"%s"`     #自1970年以来秒数
stime=`date -d @$seconds +"%Y-%m-%d %H:%M:%S""`   #秒数转化为时间字符串

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics