package main

import (
"fmt"
"time"
) func main() {
fmt.Println(time.Now()) //显示时间:2019-03-15 17:49:29.0648086 +0800 CST m=+0.005000301
fmt.Println(time.Now().Format("2006---01-02 15:04:05")) //显示时间:2019---03-15 17:52:13 ,奇葩的2006-01-02 15:04:05,而不是yy-m-d H:m:s
fmt.Println(time.Now().Unix()) //时间戳 1552643533 // seconds since 1970
t, _ := time.Parse("2006---01-02 15:04:05", "2019---03-15 17:52:13") //格式化UTC时间转时间戳,还可用time.Date,ParseInLocation
fmt.Println(t.Unix())
//上月第一天,参考https://www.golangtc.com/t/51bd288c320b5264b800001c中navygong的代码
//比如今天,7.31,因为没有6.31,简单用AddDate(0, -1, 0),不是6月,而是7.1号。因此用下面的代码:
year, month, _ := time.Now().Date()
thisMonthFirstDay := time.Date(year, month, , , , , , t.Location()) //本月第一天
fmt.Println(thisMonthFirstDay.AddDate(, -, )) //上月第一天 fmt.Println(thisMonthFirstDay.AddDate(, , -)) //同理,本月最后一天
thisYearFirstDay := time.Date(year, , , , , , , t.Location()) //同理,本年第一天
fmt.Println(thisYearFirstDay.AddDate(-, , )) //去年第一天
fmt.Println(time.Now().Weekday()) //今天是周几?Friday
fmt.Println(int(time.Now().Weekday())) //
fmt.Println(time.Now().Add(-time.Minute * )) //10分钟前的时间
//明天零点的时间戳,参考https://blog.csdn.net/liangguangchuan/article/details/76922548
timeStr := time.Now().Format("2006-01-02")
//使用Parse 默认获取为UTC时区 需要获取本地时区 所以使用ParseInLocation
t5, _ := time.ParseInLocation("2006-01-02 15:04:05", timeStr+" 23:59:59", time.Local)
t6, _ := time.ParseInLocation("2006-01-02", timeStr, time.Local)
fmt.Println(t5.Unix() + )
fmt.Println(t6.AddDate(, , ).Unix()) }

补充说明:注意time.Now()返回的是本地时间。

另, 参考:https://www.jianshu.com/p/480ac51a22c0

补充:整形转日期字符串

    t0 := int64()
t1 := time.Unix(t0, ).Format("2006-01-02 15:04:05")
fmt.Println(t1)

要定时执行的话,参考之前的一篇:  Go语言中定时器cron的基本使用

golang 日期时间处理的更多相关文章

  1. golang日期时间格式format()

    format()函数格式化字符串,用了语句time.now().format(“2015-11-12 12:00:00”),结果输出结果就是不能达到理想的结果,然后把golang文档中的”2006-0 ...

  2. go日期时间函数+常用内建函数+错误处理

    日期时间函数 // 时间日期函数包 import "time" // 1. 当前时间 time.Now()-->time.Time类型 // 2. now:=time.Now ...

  3. EasyUI datagrid 日期时间格式化

    EasyUI datagrid中显示日期时间时,会显示为以下不太直观的数值: 添加以下JavaScript脚本,然后在field中添加 formatter: DateTimeFormatter 即可. ...

  4. POCO库——Foundation组件之日期时间DateTime

    日期时间DateTime:内部提供多个设计计时器.日期.时区.时间戳等: Clock.h :Clock时钟计时类,_clock:Int64类型时钟值,CLOCKVAL_MIN.CLOCKVAL_MAX ...

  5. db2 日期时间格式

    db2日期和时间常用汇总 1.db2可以通过SYSIBM.SYSDUMMY1.SYSIBM.DUAL获取寄存器中的值,也可以通过VALUES关键字获取寄存器中的值. SELECT 'HELLO DB2 ...

  6. Angularjs在控制器(controller.js)的js代码中使用过滤器($filter)格式化日期/时间实例

    Angularjs内置的过滤器(filter)为我们的数据信息格式化提供了比较强大的功能,比如:格式化时间,日期.格式化数字精度.语言本地化.格式化货币等等.但这些过滤器一般都是在VIEW中使用的,比 ...

  7. MySQL学习笔记八:日期/时间的处理

    MySQL日期时间的处理,在其官网文档上都有详细的阐述,想了解更多的同学可自行查阅. 1.查询当前日期时间:函数有now(),localtime(),current_timestamp(),sysda ...

  8. Java日期时间操作的一些方法

    1. 获得Calendar实例: Calendar c = Calendar.getInstance(); 2. 定义日期/时间的格式: SimpleDateFormat sdf =new Simpl ...

  9. mysql与oracle的日期/时间函数小结

    前言 本文的日期/时间全部格式化为”2016-01-01 01:01:01“形式: MONITOR_TIME为数据库表字段: 字符串与日期/时间相互转换函数 Oracle 日期/时间转字符串函数:to ...

随机推荐

  1. #001 Python 00号作业:关于课程

    请大家继续思考,你希望我们的课程主要涉略哪些方面?你希望我们的课程能够带给你哪些基本的技能?你希望理论课应该怎么上,实验课应该怎么上?对于我们的课程有什么建议或意见 作为一名计算机专业的学生,对于py ...

  2. 使用正则替换script及其内容

    因做微信公众号文章保存,发现他的js大多数也用不着,所以就想着用正则替换掉源代码中的js片段 正则代码: <script(?:[^<]++|<(?!/script>))*+&l ...

  3. BTrace 问题辅助排查工具使用手册

    BTrace是调试神器,可以通过自己编写的脚本,获取应用的一切调用信息.而不需要重启应用! Btrace 项目源码信息(你行你上~) 项目地址:http://github.com/btraceio/b ...

  4. Google File System 见解 (作业)

    Google File System ——见解 近年来,大街小巷都传遍的大数据,引起了社会的一阵学习大数据狂热,造成任何公司在招聘人员的时候都会注上一条,会大数据的优先考虑:但是,从另一方面来说,这狂 ...

  5. 跟我一起学opencv 第五课之调整图像亮度和对比度

    一.调整图像亮度与对比度 1.图像变换 ---像素变换-点操作 ---邻域操作-区域操作 调整图像亮度和对比度属于像素变换-点操作 公式为:g(i,j) = αf(i,j) + β 其中α>0 ...

  6. springBoot(13)---整合Druid实现多数据源和可视化监控

    SpringBoot整合Druid实现多数据源和可视化监控 先献上github代码地址:https://github.com/yudiandemingzi/springboot-manydatasou ...

  7. SpringSecurity设置角色和权限的注意点

    概念 在UserDetailsService的loadUserByUsername方法里去构建当前登陆的用户时,你可以选择两种授权方法,即角色授权和权限授权,对应使用的代码是hasRole和hasAu ...

  8. java~api返回值的标准化

    api返回值的标准化 例如 {"status":200,"message":"操作成功","data":"{\ ...

  9. 深入学习ThreadLocal原理

    上文我们学习了ThreadLocal的基本用法以及基本原理,ThreadLocal中的方法并不多,基本用到的也就get.set.remove等方法,但是其核心逻辑还是在定义在ThreadLocal内部 ...

  10. Java并发专题(三)深入理解volatile关键字

    前言 上一章节简单介绍了线程安全以及最基础的保证线程安全的方法,建议大家手敲代码去体会.这一章会提到volatile关键字,虽然看起来很简单,但是想彻底搞清楚需要具备JMM.CPU缓存模型的知识.不要 ...