From 0a5cae7106afb0823e8db08ee059e5b6165c5e76 Mon Sep 17 00:00:00 2001 From: jingyuexing <19589872+jingyuexing@users.noreply.github.com> Date: Tue, 30 Jan 2024 08:22:12 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=A7=B9=20chore:=20support=20for=20abbrevi?= =?UTF-8?q?ations?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- datetime.go | 8 +++++++- utils_test.go | 9 +++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/datetime.go b/datetime.go index 5300fd5..ffb37a4 100644 --- a/datetime.go +++ b/datetime.go @@ -13,10 +13,13 @@ const ( FormatMonth FormatTemplate = "MM" FormatShortMonth FormatTemplate = "M" FormatDay FormatTemplate = "dd" + FormatShortDay FormatTemplate = "d" FormatHour FormatTemplate = "HH" FormatShortHour FormatTemplate = "H" FormatSecond FormatTemplate = "ss" + FormatShortSecond FormatTemplate = "s" FormatMinute FormatTemplate = "mm" + FormatShortMinute FormatTemplate = "m" FormatMillisecond FormatTemplate = "ms" FormatWeek FormatTemplate = "W" FormatShortWeek FormatTemplate = "WW" @@ -30,16 +33,19 @@ func DateTimeFormat(date time.Time, format string) string { FormatMonth: int(date.Month()), FormatShortMonth: int(date.Month()), FormatDay: date.Day(), + FormatShortDay: date.Day(), FormatHour: date.Hour(), FormatShortHour: date.Hour() % 12, FormatSecond: date.Second(), + FormatShortSecond: date.Second(), FormatMinute: date.Minute(), + FormatShortMinute: date.Minute(), FormatMillisecond: date.Nanosecond() / int(time.Millisecond), FormatWeek: int(date.Weekday()), FormatShortWeek: int(date.Weekday()), } - for _, key := range []FormatTemplate{FormatYear, FormatMonth, FormatShortYear, FormatShortMonth, FormatDay, FormatHour, FormatShortHour, FormatSecond, FormatMinute, FormatMillisecond, FormatWeek, FormatShortWeek} { + for _, key := range []FormatTemplate{FormatYear, FormatMonth, FormatShortYear, FormatShortMonth, FormatDay, FormatShortDay, FormatHour, FormatShortHour, FormatSecond, FormatShortSecond, FormatMinute, FormatShortMinute, FormatMillisecond, FormatWeek, FormatShortWeek} { formatted = strings.Replace( formatted, string(key), diff --git a/utils_test.go b/utils_test.go index c50822c..2c4074a 100644 --- a/utils_test.go +++ b/utils_test.go @@ -283,9 +283,14 @@ func TestDateTimeFormat(t *testing.T){ t.Error("format date wrong") } - result2 := utils.DateTimeFormat(datetime,"MM/dd/YYYY HH:mm:ss.ms") + result2 := utils.DateTimeFormat(datetime,"MM/dd/YYYY HH:mm:ss") - if result2 != "01/30/2024 07:51:32.00"{ + if result2 != "01/30/2024 07:51:32"{ t.Error("format datetime wrong") } + + result3 := utils.DateTimeFormat(datetime,"YYYY年M月d日 H时m分s秒") + if result3 != "2024年1月30日 7时51分32秒"{ + t.Error("format has wrong") + } }