首先说明golang 语言设计设有个叫 XXnuts的家伙,果然是个变态,把时间原点设计在了2006-01-02 15:04:05
其实人家这个日期是有意义的:
2006-01-02T15:04:05Z07:00
每个数字的意义:
1 2 3 4 5 6 7 月 日 时 分 秒 年 时 区
常用的方法:
1 toTime格式化(Parsing):
用法一: 使用毫秒数
用法二: 使用固定的字符串进行格式化获得time 对象
func TestXYZ(t *testing.T) {@H_301_36@
@H_301_36@ |
4@H_301_36@
l.Println(t)@H_301_36@
t,err:=
.Parse(TimeFormat,
"2013-08-11 11:18:46"
5
@H_301_36@
6@H_301_36@
}@H_301_36@
2 toString时间格式化 Formatting
01@H_301_36@
package main@H_301_36@
02@H_301_36@
@H_301_36@
04@H_301_36@
"fmt"
@H_301_36@
06@H_301_36@
07@H_301_36@
08@H_301_36@
func main() {@H_301_36@
10@H_301_36@
t.ZoneOffset = -4*60*60@H_301_36@
12@H_301_36@
}@H_301_36@
3 格式串类型
当然如果上面没有你要的格式化类型,那就看下面的附表:
const ( ANSIC = "Mon Jan _2 15:04:05 2006" UnixDate = "Mon Jan _2 15:04:05 MST 2006" RubyDate = "Mon Jan 02 15:04:05 -0700 2006" RFC822 = "02 Jan 06 15:04 MST" // RFC822 with numeric zone RFC850 = "Monday,02-Jan-06 15:04:05 MST" RFC822Z = "02 Jan 06 15:04 -0700" RFC1123 = "Mon,02 Jan 2006 15:04:05 MST" // RFC1123 with numeric zone RFC3339 = "2006-01-02T15:04:05Z07:00" RFC1123Z = "Mon,02 Jan 2006 15:04:05 -0700" RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00" // Handy time stamps. Stamp = "Jan _2 15:04:05" Kitchen = "3:04PM" StampMilli = "Jan _2 15:04:05.000" StampMicro = "Jan _2 15:04:05.000000" StampNano = "Jan _2 15:04:05.000000000" )
原文:http://my.oschina.net/yinlei212/blog/151963