Golang中使用Date進(jìn)行日期格式化(沿用Java風(fēng)格)
本文介紹了Golang中使用Date進(jìn)行日期格式化,分享給大家,具體如下:
Githubhttps://github.com/noogo/date
Date
Date是一個(gè)基于time包裝的一個(gè)日期包,通過此包可以快速創(chuàng)建日期、獲取時(shí)間戳、毫秒數(shù)及最重要的日期格式化,另外你還可以繼續(xù)使用time包下的所有函數(shù)(除time.Foramt(string)外)你可以通過以下方法快速創(chuàng)建一個(gè)Date對象:
Now() WithTime(t time.Time) WithTimestamp(timestamp int64) WithMillisecond(millisecond int64) WithDate(year, month, date, hour, minute, second int)Note:你可以通過Date.Format(String,...bool)方法來對日期進(jìn)行格式化,日期格式化是按照J(rèn)ava風(fēng)格實(shí)現(xiàn)的,免去了Golang中非常規(guī)的格式化方法,這對我們使用日期格式化增加了很大的便利,以下問Java日期格式化參考表:
字母 日期或時(shí)間元素 表示 示例 G Era 標(biāo)志符 Text AD y 年 Year 1996; 96 M 年中的月份 Month July; Jul; 07 w 年中的周數(shù) Number 27 W 月份中的周數(shù) umber 2 D 年中的天數(shù) Number 189 d 月份中的天數(shù) umber 10 F 月份中的星期 umber 2 E 星期中的天數(shù) ext Tuesday; Tue v a Am/pm 標(biāo)記 Text PM H 一天中的小時(shí)數(shù)(0-23) umber 0 k 一天中的小時(shí)數(shù)(1-24) umber 24 K am/pm 中的小時(shí)數(shù)(0-11) umber 0 h am/pm 中的小時(shí)數(shù)(1-12) umber 12 m 小時(shí)中的分鐘數(shù) umber 30 s 分鐘中的秒數(shù) umber 55 S 毫秒數(shù) Number 978 z 時(shí)區(qū) General time zone Pacific Standard Time; PST; GMT-08:00 Z 時(shí)區(qū) RFC 822 time zone -0800
開始
獲取Date
go get -u github.com/noogo/date
使用Date
// get dated:=date.Now()//d:=date.WithTime(time.Now())//d:=date.WithTimestamp(1586448000)//d:=date.WithMillisecond(1586448000000)//d:=date.WithDate(2020,04,29,0,0,0)// get milliseconds//milliseconds:=date.Millisecond()// get timestamp//timestamp:=date.Timestamp()// date formatret,err:=d.Format('yyyy-MM-dd HH:mm:ss EEEE',true)if err!=nil{ log.Fatalln(err)}fmt.Println(ret)
運(yùn)行結(jié)果
2020-04-29 00:13:12 星期三
格式化說明
G:保留字段,不支持格式化 年:當(dāng)y的連續(xù)個(gè)數(shù)小于4時(shí)則顯示縮寫后的年,如2008,則會(huì)格式化為08 月:當(dāng)M的連續(xù)個(gè)數(shù)大于3時(shí)則顯示英文單詞月份,如果等于3則顯示英文單詞縮寫,否則顯示數(shù)字月份,位數(shù)不足用0填充。 對于表格中表示類型為Number類型的按照統(tǒng)一規(guī)則顯示對應(yīng)數(shù)值,其余多余的格式化字符用0填充,假如當(dāng)前時(shí)間為2020年1月1日,08時(shí)08分08秒,那么mm格式化后的分鐘則為08,mmm格式化后的分鐘則為008依次類推 如果Date.Format(string,...bool)中第二個(gè)參數(shù)傳true,代表中文模式,此參數(shù)控制am/pm及星期數(shù),對應(yīng)會(huì)被格式化為上午/下午和星期一格式。格式化參結(jié)果
令:當(dāng)前日期為2008-08-18 18:28:38.888
layout result y 08 yy 08 yyy 08 yyyy 2008 yyyyy 2008 M 08 MM 08 MMM Aug MMMM August MMMMM August w 34 ww 34 www 034 wwww 0034 wwwww 00034 W 4 WW 04 WWW 004 WWWW 0004 WWWWW 00004 D 231 DD 231 DDD 231 DDDD 0231 DDDDD 00231 d 18 dd 18 ddd 018 dddd 0018 ddddd 00018 F 3 FF 03 FFF 003 FFFF 0003 FFFFF 00003 E 星期一(chinese) EE 星期一(chinese) EEE 星期一(chinese) EEEE 星期一(chinese) EEEEE 星期一(chinese) a 下午(chinese) aa 下午(chinese) aaa 下午(chinese) aaaa 下午(chinese) aaaaa 下午(chinese) E 1(standard) EE 01(standard) EEE Mon(standard) EEEE Monday(standard) EEEEE Monday(standard) a PM(standard) aa PM(standard) aaa PM(standard) aaaa PM(standard) aaaaa PM(standard) H 18 HH 18 HHH 018 HHHH 0018 HHHHH 00018 k 18 kk 18 kkk 018 kkkk 0018 kkkkk 00018 K 6 KK 06 KKK 006 KKKK 0006 KKKKK 00006 h 6 hh 06 hhh 006 hhhh 0006 hhhhh 00006 m 28 mm 28 mmm 028 mmmm 0028 mmmmm 00028 s 38 ss 38 sss 038 ssss 0038 sssss 00038 S 888 SS 888 SSS 888 SSSS 0888 SSSSS 00888 z CST zz CST zzz CST zzzz CST zzzzz CST Z +0800 ZZ +0800 ZZZ +0800 ZZZZ +0800 ZZZZZ +0800
到此這篇關(guān)于Golang中使用Date進(jìn)行日期格式化(沿用Java風(fēng)格)的文章就介紹到這了,更多相關(guān)Golang Date日期格式化內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 利用ajax+php實(shí)現(xiàn)商品價(jià)格計(jì)算2. Python matplotlib 繪制雙Y軸曲線圖的示例代碼3. jsp實(shí)現(xiàn)textarea中的文字保存換行空格存到數(shù)據(jù)庫的方法4. JSP頁面實(shí)現(xiàn)驗(yàn)證碼校驗(yàn)功能5. asp知識(shí)整理筆記4(問答模式)6. java 優(yōu)雅關(guān)閉線程池的方案7. 詳解idea中web.xml默認(rèn)版本問題解決8. python selenium 獲取接口數(shù)據(jù)的實(shí)現(xiàn)9. ASP實(shí)現(xiàn)加法驗(yàn)證碼10. jsp EL表達(dá)式詳解
