linux 时间戳13,13/11位unix时间戳转换成标准时间
使用范例
char *str="1320718222932";
long long time1;
sscanf(str,"%I64d",&time);
CString strTime=MillSecond2LocalTime(time,8);
/
int CTimeChangeDlg::IsLeap(unsigned short year)
{
return ((year%4==0)&&(year%100!=0)||(year%400==0));
}
CString CTimeChangeDlg::MillSecond2LocalTime(long long time,long timezone)
{
const int monthLengths[2][13]={
{0,31,59,90,120,151,181,212,243,273,304,334,365},
{0,31,60,91,121,152,182,213,244,274,305,335,366}
};
const int yearLengths[2]={365,366};
int year(0),month(0),minMonth(0),maxMonth(0),days(0),clock(0),isLeap(0),day(0),hour(0),minute(0),second(0);
time/=1000;
time+=timezone*60*60;
days=time/86400;//天数
clock=time%86400;//小时数
if(clock<0)
{
clock+=86400;
days-=1;
}
if(days>=0)
{
year=days/366;
days-=year*365+(year+1)/4-(year+69)/100+(year+369)/400;
for (year=year+1970;;year++)
{
isLeap=IsLeap(year);
if(days
{
break;
}
days-=yearLengths[isLeap];
}
}
else
{
year=days/366;
days-=year*365+(year-2)/4-(year-30)/100+(year-30)/400;
for(year=year+1970-1;;year--)
{
isLeap=false;
days+=yearLengths[isLeap];
if (days>=0)
{
break;
}
}
}
minMonth=0;
maxMonth=12;
for (month=5;month<12&&month>0;month=(minMonth+maxMonth)/2)
{
if (days
{
maxMonth=month;
}
else if (days>=monthLengths[isLeap][month+1])
{
minMonth=month;
}
else
{
break;
}
}
days-=monthLengths[isLeap][month];
month++;
day=days+1;
hour=clock/3600;
clock=clock%3600;
minute=clock/60;
second=clock%60;
CString t;
t.Format(TEXT("%d-%02d-%02d %02d:%02d:%02d"),year,month,day,hour,minute,second);
return t;
}
11位Unix 时间戳转换系统标准形式时间
/************************ 转换按钮 *****************
//输入UNIX字符串 csInput = “1244915859”;
//输出系统时间:csOutput = “2009-06-14 01:57:39”;
***************************************************/
void CUnixTimeDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
CString csInput,csOutput;
m_input.GetWindowTextA(csInput); //获取编辑框输入Unix字符串
int nUnixTime = atoi(csInput);
struct tm *newtime;
__time64_t long_time = nUnixTime;
newtime = _localtime64( &long_time ); // 值存在newtime 中
csOutput.Format("%04d-%02d-%02d %02d:%02d:%02d"
,newtime->tm_year + 1900 //年需要加1900
,newtime->tm_mon + 1 //月需要加1 (它是从0 到11)
,newtime->tm_mday
,newtime->tm_hour
,newtime->tm_min
,newtime->tm_sec
);
m_output.SetWindowTextA(csOutput); //编辑框输出系统时间字符串
}
系统标准形式时间转换Unix 时间戳
//unix时间戳为1900年以来的秒数
//获取系统当前时间的Unix时间戳
Cstring nowTime;
SYSTEMTIME sysTime;
GetLocalTime(&sysTime);
CTime m_tTime(sysTime);
time_t unixTime = m_tTime.GetTime();
nowTime.Format("%d",unixTime);//输出UNIX时间戳字符串
对于iOS它是从2001-01-01 00:00:00算起
需要做一个转换417594327.880849(实际时间)+978278400(从1970-01-01 00:00:00至2001-01-01 00:00:00) + 8 * 3600 (UTC+8) = 1395901527.880849
linux 时间戳13,13/11位unix时间戳转换成标准时间相关推荐
- java 19位时间戳_Java将19位Unix时间戳转换为可读日期
我正在尝试将19位Unix时间戳(例如,1558439504711000000一个五分之五)转换为可读的日期/时间格式.我的时间戳以6个零结尾,这表明时间以纳秒为单位. 我遇到了一些例子,其中人们使用 ...
- Linux命令date日期时间和Unix时间戳互转
A.将日期转换为Unix时间戳 将当前时间以Unix时间戳表示: date +%s 输出如下: 1361542433 转换指定日期为Unix时间戳: date -d '2013-2-22 22:14' ...
- php 把unix时间转换成时间,php unix时间戳转换成时间的方法
php unix时间戳转换成时间的方法:首先创建一个PHP示例文件:然后通过"date('Y-m-d H:i:s', 1547740800);"方式将指定的unix时间戳转换成时间 ...
- 格林威治时间(时间戳)转换成标准时间
/// <summary>/// 格林威治时间(时间戳)转换成标准时间/// </summary>/// <param name="time"> ...
- 【学习笔记】简易的24位BMP图片转换成灰度图片
简易的24位BMP图片转换成灰度图片的C语言实现 使用C语言实现的一个简易的24位BMP图片转换成灰度图片的程序.需要先准备一张24位的BMP图片. 说明 RGB图片转换成灰度图片主要是使用这个公式: ...
- Linux下如何把时间转成秒数,或把秒数转换成标准时间
2019独角兽企业重金招聘Python工程师标准>>> $ date Tue Feb 3 11:29:00 CST 2009 --把时间转成秒数 $ date +%s 1233631 ...
- python unix时间戳_Python 获得13位unix时间戳的方法
在python 开发web程序时,需要调用第三方的相关接口,在调用时,需要对请求进行签名.需要用到unix时间戳. 在python里,在网上介绍的很多方法,得到的时间戳是10位.而java里默认是13 ...
- Python 获得13位unix时间戳
在python 开发web程序时,需要调用第三方的相关接口,在调用时,需要对请求进行签名.需要用到unix时间戳. 在python里,在网上介绍的很多方法,得到的时间戳是10位.而java里默认是13 ...
- python unix时间戳_Python怎样获得13位unix时间戳
python datetime和unix时间戳之间相互转换 1.代码: import time import datetime # 1.datetime转unix时间戳 # (1).逐个打印 n = ...
最新文章
- 一些真诚的学习经验和生活感悟
- C++中的static函数和extern关键字
- C语言实现djikstra算法(附完整源码)
- git-版本的创建与版本的切换操作
- 多系统PE win UBUNTU OSX
- 【LOJ】#2479. 「九省联考 2018」制胡窜
- 关于卷积神经网络可视化的一点心得
- Fedora上配置一个安全FTP
- idea安装及配置Tomcat
- excel自动换行_Excel教程:看完这篇,再也不为excel换行而烦恼
- 【Linux】 基础入门 全解
- win2d 渐变颜色
- 运营商大数据的客源精准吗?
- 缓存穿透,缓存击穿,缓存雪崩
- 怎么做期货可以每天都赚钱?都有哪些技巧和方法?
- 20世纪最伟大的十大算法
- ios label文字行间距_iOS 设置label的行间距教程
- ## IDEA创建maven项目没有src目录问题解决
- 熊猫学猿--thinkphp5修改首页
- 被冲击的2022届普通毕业生