根据1970 年1月1日到现在的时间秒数计算出CHINA现在的日期时间(考虑闰年,平年,时区等因素)

package mainimport ("time""fmt"
)func main() {ret :=time.Now().Unix()var days = int(ret / ( 24 * 3600 ))ret = ret  % ( 24 * 3600 )var hours =int( ret / 3600 + 8 )ret = ret % 3600var minute = int( ret / 60 )var second = int( ret % 60 )var year,months,day= getYMD( days )fmt.Printf("CHINA现在的时间是:%d年:%d月:%d日:%d点:%d分:%d秒",year,months,day,hours,minute,second)}
func getYMD(days int)(year int,months int,day int ) {var yuefen  = [12]int{31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}var yuefen1 = [12]int{31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}year = 1970months = 1day = 1var temp intvar i intfor i = days; i > 367; i-- {if year%4 == 0 && year%100 != 0 || year%400 == 0 {year = year + 1i = i - 366+1} else {year = year + 1i = i - 365+1}}if year%4 == 0 && year%100 != 0 || year%400 == 0 {for q := 0; q < 12; q++ {temp += yuefen1[q]if temp > i {months = q + 1day = i-(temp - yuefen1[q])+1}break //跳出循环结束,返回值}}else{for q := 0; q < 12; q++ {temp=temp + yuefen[q]if temp > i {months=q+1day = i-(temp - yuefen[q])+1break   //跳出循环结束,返回值}}}return
}

输出结果为:

golang小案例 —— 1970 年1月1日到现在的时间秒数计算出现在的日期时间相关推荐

  1. 1970年1月1日到某一时间的秒数换算

    struct tm t;     time_t t_start_day;     t.tm_year=2018-1900;     t.tm_mon=12;     t.tm_mday=7;      ...

  2. C/C++ 获取系统时间距 1970年1月1日00:00:00 的毫秒数

    #include <stdio.h> #include <sys/timeb.h> typedef unsigned long long ulong;ulong current ...

  3. 日期类的时间从为什么是从1970年1月1日(格林威治时间)

    I suspect that Java was born and raised on a UNIX system. UNIX considers the epoch (when did time be ...

  4. Java的时间为何从1970年1月1日开始

    上周有同事问到几个和时间相关的问题,非常有意思,之前也没怎么想过,不知道大家是否想过这几个问题 在mac下发现System.nanoTime()在JDK7和JDK8下输出的值怎么完全不一样 Syste ...

  5. 为什么从1970年1月1日开始

    2019独角兽企业重金招聘Python工程师标准>>> 1.最懒的解释 很多编程语言起源于UNIX系统,而UNIX系统认为1970年1月1日0点是时间纪元,所以我们常说的UNIX时间 ...

  6. 为什么编程语言以及数据库要从1970年1月1日开始计算时

    最初计算机操作系统是32位,而时间也是用32位表示. System.out.println(Integer.MAX_VALUE); 2147483647 Integer在JAVA内用32位表示,因此3 ...

  7. 漫话:为什么计算机起始时间是1970年1月1日?

    这是我的第 203 期分享 作者 | 漫画编程 来源 | 漫画编程(ID:mhcoding) 分享 | Java中文社群(ID:javacn666) 问题复现 1970-01-01对于开发者来说都是不 ...

  8. 为什么计算机时间要从1970年1月1日开始算起

    1970年1月1日... 为什么计算机时间和众多的编程语言的时间都要从1970年1月1日开始算起呢,时间计时起点到底为什么是1970年1月1号呢?我想大部分接触过计算机的人都知道,但大家几乎都没有想过 ...

  9. 漫画:为什么计算机起始时间是 1970 年 1 月 1 日?

    作者 | 漫话编程 来源 | 漫话编程(ID:mhcoding) 问题复现 1970-01-01对于开发者来说都是不陌生的,有些系统对于时间的处理如果不够好的话,就可能把时间显示成1970-01-01 ...

最新文章

  1. 全球著名音乐抓轨软件EAC 设置详解
  2. 《麻省理工科技评论》发布2019年全球十大突破性技术!
  3. CSS3 美女动画相框
  4. iOS进阶之底层原理-线程与进程、gcd
  5. python基本语法语句-Python基本语句
  6. Docker镜像加速器配置
  7. python 文件编码的识别_【python】python编码方式,chardet编码识别库
  8. 今晚直播 | AAAI 2018论文解读:零资源机器翻译的最新进展
  9. delphi初级教程之delphi断点调试二
  10. python学习笔记(十五)标准库StringIO和BytesIO
  11. 求字符串里里面字符出现的次数和出现哪些不同的字符的字符串
  12. Oracle 通过字段名查询其所在的表
  13. c语言和c 编程的区别吗,C语言和C有什么区别呀?
  14. Redis如何高效实现点赞、取消点赞功能
  15. LeetCode(1029)——两地调度(JavaScript)
  16. Jeecg Boot 2.2.1 版本发布,基于SpringBoot的低代码平台
  17. 码农和程序员之间的5个关键差异
  18. 手机游戏公司设定的客户群体是大学生和农民工
  19. GitHub 上有哪些考研神器?
  20. 用矿卡P106升级tensorflow深度学习服务器

热门文章

  1. linux传统方式挂载新硬盘并进行分区格式化
  2. 安卓模拟器手动root
  3. fieldset标签,html5新增表单标签
  4. 我是曾经的“网瘾少年”,靠自学编程走出了大山
  5. L3是什么东西?我们为什么需要 L3?如何构建?
  6. JSF标签之数据表h:dataTable
  7. 程序员是如何泡妹子的
  8. Android_弹钢琴(多媒体应用)
  9. PHP面试遇到面试官的swoole协程三连问,快哭了!
  10. Unity3d 移除某个GameObject的所有子物体