网站首页 > 物联资讯 > 技术分享

把自1970年1月1日以来的秒数转化成年月日

2016-09-28 00:00:00 广州睿丰德信息科技有限公司 阅读
睿丰德科技 专注RFID识别技术和条码识别技术与管理软件的集成项目。质量追溯系统、MES系统、金蝶与条码系统对接、用友与条码系统对接

#include <iostream>

using namespace std;   bool IsRound(int year){  if((year%100)&&(year%4==0)) return 1;  if((year%100==0)&&(year%400==0)) return 1;  return 0; } int main() {  int n;  int year_s[2]= {365*24*60*60, 366*24*60*60};  int month_s[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},    {31,29,31,30,31,30,31,31,30,31,30,31}};  int day_s = 24*60*60;  int hour_s = 60*60;  int minute_s = 60;         while(cin>>n){     int temp = n;     int year=1970;          int month=1;          int day=1;          int hour=0;          int minute=0;          int second=0;       while(temp>=60){        int flag= IsRound(year);      if(temp>=year_s[flag]) { year++; temp-=year_s[flag]; }      else if(temp>=day_s){       int days = temp/day_s;       temp=temp%day_s;       int i=0;       int flag = IsRound(year);       int hh=31;       while(days>=hh){        days-=month_s[flag][i++];        hh=month_s[flag][i];        }       month+= i;       day+=days;        }else if(temp>=hour_s){           hour=temp/hour_s;           temp%=hour_s;      }else if(temp>=minute_s){            minute = temp/minute_s;            temp%=minute_s;      }      }      second = temp;           cout<<year<<"-";       if(month/10==0) cout<<"0";       cout<<month<<"-";       if(day/10==0) cout<<"0";       cout<<day<<" ";       if(hour/10==0) cout<<"0";       cout<<hour<<":";       if(minute/10==0) cout<<"0";       cout<<minute<<":";       if(second/10==0) cout<<"0";       cout<<second<<endl;  }      return 0; }RFID管理系统集成商 RFID中间件 条码系统中间层 物联网软件集成