Datetime 戈朗如何将RFC3339格式转换为ISO8601?

Datetime 戈朗如何将RFC3339格式转换为ISO8601?,datetime,go,Datetime,Go,我有一个使用time.Now().Format(time.rfc339)获得的时间戳。格式是2018-10-17T07:26:33Z但是,我希望格式是ISO 8601:2018-10-17T07:26:33.000Z 最后如何获得这些额外的毫秒数?制作一个自定义布局,如下所示 package main import ( "fmt" "time" ) func main() { t1, e := time.Parse( time.RFC3339,

我有一个使用
time.Now().Format(time.rfc339)
获得的时间戳。格式是
2018-10-17T07:26:33Z
但是,我希望格式是ISO 8601:
2018-10-17T07:26:33.000Z


最后如何获得这些额外的毫秒数?

制作一个自定义布局,如下所示

package main

import (
    "fmt"
    "time"
)

func main() {
    t1, e := time.Parse(
        time.RFC3339,
        "2018-10-17T07:26:33Z")
    if e != nil {
        fmt.Println(e)
    }
    //2018-10-17T07:26:33.000Z required
    //Layouts must use the reference time Mon Jan 2 15:04:05 MST 2006
    fmt.Println(t1.Format("2006-01-02T15:04:05.000Z"))

}
操场链接(好主意阳光)

使用

t := time.Now()
var fdatevalue string
// outstr = fmt.Sprintf("%02d%02d%02d%02d%02d", t.Month(), t.Day(), t.Hour(),       t.Minute(), t.Second())
fdatevalue=fmt.Sprintf("%02d%02d%2dT%2d:%2d:%2d", t.Year() , t.Month(), t.Day() , t.Hour(),t.Minute(),t.Second)

在格式中使用999。@Volker你能帮我准确地理解你所做的
go-doc-time.RFC3339Nano
和阅读
go-doc-time.format
time.Now().Format("2006-01-02T15:04:05.000Z")