本博客转自: https://blog.csdn.net/mirage003/article/details/86073046

package mainimport ("log""time"
)func main() {t := int64(1546926630)      //外部传入的时间戳(秒为单位),必须为int64类型t1 := "2019-01-08 13:50:30" //外部传入的时间字符串//时间转换的模板,golang里面只能是 "2006-01-02 15:04:05" (go的诞生时间)timeTemplate1 := "2006-01-02 15:04:05" //常规类型timeTemplate2 := "2006/01/02 15:04:05" //其他类型timeTemplate3 := "2006-01-02"          //其他类型timeTemplate4 := "15:04:05"            //其他类型// ======= 将时间戳格式化为日期字符串 =======log.Println(time.Unix(t, 0).Format(timeTemplate1)) //输出:2019-01-08 13:50:30log.Println(time.Unix(t, 0).Format(timeTemplate2)) //输出:2019/01/08 13:50:30log.Println(time.Unix(t, 0).Format(timeTemplate3)) //输出:2019-01-08log.Println(time.Unix(t, 0).Format(timeTemplate4)) //输出:13:50:30// ======= 将时间字符串转换为时间戳 =======stamp, _ := time.ParseInLocation(timeTemplate1, t1, time.Local) //使用parseInLocation将字符串格式化返回本地时区时间log.Println(stamp.Unix())  //输出:1546926630
}
package mainimport ("log""time"
)
func main(){// 获取每天的零点时间戳, 一个小时的时间戳是3600timeStr := time.Now().Format("2006-01-02")t, _ := time.ParseInLocation("2006-01-02", timeStr, time.Local)timeUnix := t.Unix()
}
package mainimport ("fmt""strconv""time"
)func main() {t := time.Now()fmt.Println(t)fmt.Println(t.UTC().Format(time.UnixDate))fmt.Println(t.Unix())timestamp := strconv.FormatInt(t.UTC().UnixNano(), 10)fmt.Println(timestamp)timestamp = timestamp[:10]fmt.Println(timestamp)
}//输出:
//2019-09-02 19:17:58.2508394 +0800 CST m=+0.001994001
//Mon Sep  2 11:17:58 UTC 2019
//1567423078
//1567423078250839400
//1567423078
package mainimport ("fmt""strconv""time"
)func main() {const longForm = "Jan 2, 2006 at 3:04pm (MST)"t, _ := time.Parse(longForm, "Jun 21, 2017 at 0:00am (PST)")fmt.Println(t)const shortForm = "2006-Jan-02"t, _ = time.Parse(shortForm, "2017-Jun-21")fmt.Println(t)t, _ = time.Parse("01/02/2006", "06/21/2017")fmt.Println(t)fmt.Println(t.Unix())i, err := strconv.ParseInt("1498003200", 10, 64)if err != nil {panic(err)}tm := time.Unix(i, 0)fmt.Println(tm)var timestamp int64 = 1498003200tm2 := time.Unix(timestamp, 0)fmt.Println(tm2.Format("2006-01-02 03:04:05 PM"))fmt.Println(tm2.Format("02/01/2006 15:04:05 PM"))
}//输出
//2017-06-21 00:00:00 +0000 PST
//2017-06-21 00:00:00 +0000 UTC
//2017-06-21 00:00:00 +0000 UTC
//1498003200
//2017-06-21 08:00:00 +0800 CST
//2017-06-21 08:00:00 AM
//21/06/2017 08:00:00 AM
time常用方法After(u Time) bool
时间类型比较,是否在Time之后Before(u Time) bool
时间类型比较,是否在Time之前Equal(u Time) bool
比较两个时间是否相等IsZero() bool
判断时间是否为零值,如果sec和nsec两个属性都是0的话,则该时间类型为0Date() (year int, month Month, day int)
返回年月日,三个参数Year() int
返回年份Month() Month
返回月份.是Month类型Day() int
返回多少号Weekday() Weekday
返回星期几,是Weekday类型ISOWeek() (year, week int)
返回年份,和该填是在这年的第几周.Clock() (hour, min, sec int)
返回小时,分钟,秒Hour() int
返回小时Minute() int
返回分钟Second() int
返回秒数Nanosecond() int
返回纳秒

计算时间差

package mainimport ("fmt""strings""time"
)func main() {// Add 时间相加now := time.Now()// ParseDuration parses a duration string.// A duration string is a possibly signed sequence of decimal numbers,// each with optional fraction and a unit suffix,// such as "300ms", "-1.5h" or "2h45m".//  Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".// 10分钟前m, _ := time.ParseDuration("-1m")m1 := now.Add(m)fmt.Println(m1)// 8个小时前h, _ := time.ParseDuration("-1h")h1 := now.Add(8 * h)fmt.Println(h1)// 一天前d, _ := time.ParseDuration("-24h")d1 := now.Add(d)fmt.Println(d1)printSplit(50)// 10分钟后mm, _ := time.ParseDuration("1m")mm1 := now.Add(mm)fmt.Println(mm1)// 8小时后hh, _ := time.ParseDuration("1h")hh1 := now.Add(hh)fmt.Println(hh1)// 一天后dd, _ := time.ParseDuration("24h")dd1 := now.Add(dd)fmt.Println(dd1)printSplit(50)// Sub 计算两个时间差subM := now.Sub(m1)fmt.Println(subM.Minutes(), "分钟")sumH := now.Sub(h1)fmt.Println(sumH.Hours(), "小时")sumD := now.Sub(d1)fmt.Printf("%v 天\n", sumD.Hours()/24)}func printSplit(count int) {fmt.Println(strings.Repeat("#", count))
}

转载于:https://www.cnblogs.com/nyist-xsk/p/11448348.html

golang的time包:时间字符串和时间戳的相互转换相关推荐

  1. Golang获取年月日时间字符串和时间戳

    1.获取字符串时间 //获取年.月.日.时.分.秒 getYear := time.Now().Year() //获取年 getMonth := time.Now().Format("01& ...

  2. golang时间字符串和时间戳转换

    1. 获取当前时间字符串和时间戳 package mainimport ("fmt""time" )func main() {now := time.Now() ...

  3. Scala 将时间字符串转为时间戳

    今天需要将Nginx日志中的时间字符串转为时间戳,再加以分析,由于刚学Scala不久,Java也只是一知半解,所以在时间转换的时候浪费了一些时间,故在此备忘,也希望能帮到有需要的同学. 部分日志格式如 ...

  4. php 字符串转时间戳_php如何将时间字符串转换为时间戳

    php将时间字符串转换为时间戳的方法:可以利用内置函数strtotime()来实现.strtotime()函数可以将任何英文文本的日期或时间描述解析为Unix时间戳,若成功则返回时间戳,否则返回fal ...

  5. 时间字符串与时间戳批量转换

    原文博客地址:https://blog.csdn.net/s1164548515/article/details/100186773 时间字符串与时间戳批量转换 import pandas as pd ...

  6. C/C++时间字符串和时间戳的相互转化

    用到的函数主要有strftime.strptime .localtime .mktime. 名词解释: 时间戳:是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日 ...

  7. java时间字符串转时间戳

    java时间字符串转时间戳 测试类 代码片. @Testpublic void dateToStamp() throws Exception {String str = "2019-03-1 ...

  8. 时间字符串和时间戳的转换

    时间字符串转换为时间戳方法 1.new Date().getTime() new Date('2021-12-14 10:10:00').getTime()  // 1639447800000 2.D ...

  9. LabVIEW中将日期时间字符串转换为时间戳数据说明与例程

    LabVIEW中将日期时间字符串转换为时间戳数据说明与例程 在LabVIEW中,您可以将字符串数据转换为时间戳数据.如果您希望在测量文件中的数据旁边添加时间戳或轻松比较两个数据点之间的时间,则这可能会 ...

最新文章

  1. SpringBoot 并发登录人数控制
  2. mysql 与 oracle 的连表update
  3. 有关JNLP中传SESSIONID为参数的问题
  4. how I can get expand tree for unit test
  5. 第一百一十七期:爱上 Go 语言的10个理由
  6. 人工智能 信道估计 深度学习_深度学习人体姿态估计算法综述
  7. 基于FPGA实现uart串口模块(Verilog)--------发送模块及整合
  8. chmod 777命令_Linux用户权限管理及用户权限管理命令操作
  9. 用matlab画声偶级辐射,matlab结题报告(电偶极子的辐射场)
  10. 2.泡妞与设计模式(三) 外观模式
  11. python第三方模块
  12. HZNU 2019 Summer training 7
  13. 生物信息学|通过整合药物表型、治疗、化学结构和基因组特征,使用机器学习预测药物-药物相互作用
  14. 双向可控硅晶片光耦(TLP160J TLP260J TLP525G)基本原理及应用实例
  15. Android 4.0 UI设计规范
  16. 会计分录、科目、账户
  17. Java 生成13位条形码 Ean-13码规则:第十三位数字是前十二位数字经过计算得到的校验码。
  18. SQL SERVER IO request 超时
  19. 支持度、置信度和提升度
  20. ceph L版本相对于J版本在scrub机制上做的优化

热门文章

  1. 介绍一个JSONP 跨域访问代理API-yahooapis
  2. AspNetDB.mdf数据库的建立和使用
  3. 微软10亿美元投资AI公司助力云计算,研发通用人工智能
  4. 数据挖掘 概念与技术(原书第3版)
  5. 读写分离数据库之MyCat
  6. 怎么向html插入广告,给blogger添加各种广告代码的方法
  7. 华为数据通信部门怎么样_华为最高级别认证适合小白吗
  8. 微软服务器无法删除不了,微软终于决定解决 “进程占用而无法删除某文件”的问题...
  9. python csv数据处理_python处理csv数据的方法
  10. Notification详解