網站首頁 編程語言 正文
golang時間格式化
科普 CST 含義
CST: 中部標準時間 (Central Standard Time) 同時表示下面4個時區
CST Central Standard Time(USA) UT-6:00 CST Central Standard Time(Australia) UT 9:30 CST China Standard Time UT 8:00 CST Cuba Standard Time UT-4:0
我們常遇到的應該就是 China Standard Time.
GMT 和 UTC 的關系
UTC (Universal Time Coordinated), 以子午初線(經度0)上的評價太陽時為依據, 也就是英國倫敦的平均太陽時
GMT (Greenwitch Mean Time) 格林威治平均時間, 由于地球繞太陽的運行的軌道是橢圓, 導致 UTC 表示的時間, 不是很準確, 因此提出了 GMT 時間, 每年或者2年對 UTC 增加一個閏秒, 來完成修正. 一般上我們可以認為 GMT 和 UTC 是一樣的.
golang 的時間 認準 "2006-1-2 15:04:05.000 PM Mon Jan GMT " 去格式化就可以了。
也就是1234567,分別對應:月日時分秒年 時差,很好記憶。
只是稍微注意一下:
- 月:01或Jan都可以
- 小時:03表示12小時制,15表示24小時制。
- 時差:是 -07 ,不是 07,后邊可以增加“00”或“:00”,表示更進一步的分秒時差。
- 上下午:使用PM,不是AM。
- 擺放順序:隨意,甚至重復都可以。源代碼包也有定義的常用格式供使用。
package main ? import ( ?? ?"fmt" ?? ?"time" ) ? func main() { ?? ?timeNow := time.Now() ?? ?fmt.Println(timeNow.Format("2006-01-02 15:04:05")) // 2022-4-18 14:20:45 ?? ?fmt.Println(timeNow.Format("2006/01/02")) ? ? ? ? ?// 2021/06/25 ? ?? ?// 獲取當前時間戳 ?? ?fmt.Println(time.Now().Unix()) ?? ?// 指定的時間進行格式化 ?? ?fmt.Println(time.Unix(1650263305, 0).Format("2006-01-02 15:04:05")) ? ?? ?//24小時之內的時間計算 ParseDuration ?? ?//1小時1分1s之前 ?? ?t1, _ := timeNow.ParseDuration("-1h1m1s") ?? ?fmt.Println(t1) ?? ?m1 := curtime.Add(t1) ?? ?fmt.Println(m1) ? ? ? //24小時之外的時間計算 ?? ?beforeDay := timeNow.AddDate(0, 0, -1) ? ? // 三個參數分別是年月日,此處獲取的是前一天的日期 ?? ?beforeMonth := timeNow.AddDate(0, -1, 0) ? // 前一個月的日期 ?? ?beforeYear := timeNow.AddDate(-1, 0, 0) ? ?// 去年的當天日期 ?? ?fmt.Println(beforeDay) ?? ?fmt.Println(beforeMonth) ?? ?fmt.Println(beforeYear) ?? ?fmt.Println(beforeDay.Format("2006-01-02 15:04:05")) ? ?? ?//24小時 ?? ?fmt.Println(timeNow.Format("2006-1-2 15:04:05.000 PM Mon Jan")) // 2021-6-25 10:59:05.410 AM Fri Jun ?? ?fmt.Println(timeNow.Format("2006/01/02 15:04")) ? ? ? ? ? ? ? ? // 2021/06/25 10:59 ?? ?fmt.Println(timeNow.Format("2006-1-2 15:04:05.000")) ? ? ? ? ? ?// 2021-6-25 10:59:05.410 ?? ?fmt.Println(timeNow.Format("Mon, 02 Jan 2006 15:04:05 GMT")) ? ?// Fri, 25 Jun 2021 10:59:05 GMT ?? ?// 12小時制 ?? ?fmt.Println(timeNow.Format("2006-01-02 03:04:05.000 PM Mon Jan")) // 2021-06-25 10:59:05.410 AM Fri Jun ?? ?fmt.Println(timeNow.Format("15:04 2006/01/02")) ? ? ? ? ? ? ? ? ? // 10:59 2021/06/25 }
golang 格式化時間 yyyy-MM-dd
固定值
time ?:= "2006-01-02 15:04:05";
- 20060102:得到的是yyyyMMdd。
- 2006/01/02 15:04:得到的是yyyy/MM/dd HH:mm
- 2006年01月02日 15點04分05秒:得到的是yyyy年MM月dd日 HH點mm分SS秒
由來
2006為Golang誕生時間,15是下午3點。
幫助記憶的方法:1月2日3點4分5秒,2006年,-7時區,正好是1234567。
總結
原文鏈接:https://blog.csdn.net/hudeyong926/article/details/124248713
相關推薦
- 2022-07-16 Electron項目打包
- 2022-05-28 C語言?超詳細講解庫函數_C 語言
- 2023-11-15 LaTeX調整圖片大小的方法;自動調整合適的大小
- 2022-09-15 關于PCL出現"無法找到?pcl_commond.dll?文件程序無法執行"的問題及解決方法_C 語
- 2022-07-03 Android實現翻頁特效_Android
- 2023-02-14 詳解C/C++?Linux出錯處理函數(strerror與perror)的使用_C 語言
- 2022-12-27 Python?PyQt5實現拖放效果的原理詳解_python
- 2022-02-20 C#?.NET實現掃描識別圖片中的文字_C#教程
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支