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运算获取
C#代码 收藏代码
// 不能用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”);

  1. Java

// 获取秒
int seconds = System.currentTimeMillis()/1000;
// 秒转化为日期
Date dt = new Date();
dt.setTime( seconds*1000 );

  1. Python

与C语言API基本一致
Python代码 收藏代码
import time
time.time() #返回的是一个浮点型数值
time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) #时间字符串

  1. Shell

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值