Константа time.RFC3339
Константа time.RFC3339 представляет собой строковый шаблон
для форматирования и парсинга времени в соответствии со стандартом
RFC 3339. Этот стандарт определяет формат представления даты и времени
в интернете. Константа имеет значение "2006-01-02T15:04:05Z07:00"
и используется совместно с методами time.Time.Format и
time.Parse.
Синтаксис
const RFC3339 = "2006-01-02T15:04:05Z07:00"
Пример использования с Format
Давайте отформатируем текущее время в формате RFC 3339:
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
res := now.Format(time.RFC3339)
fmt.Println(res)
}
Результат выполнения кода:
"2026-09-04T15:04:05Z"
Пример использования с Parse
Давайте распарсим строку в формате RFC 3339 в объект времени:
package main
import (
"fmt"
"time"
)
func main() {
str := "2026-09-04T15:04:05Z"
t, err := time.Parse(time.RFC3339, str)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(t)
}
Результат выполнения кода:
"2026-09-04 15:04:05 +0000 UTC"
Пример с часовым поясом
Давайте отформатируем время с учетом часового пояса:
package main
import (
"fmt"
"time"
)
func main() {
loc, _ := time.LoadLocation("Europe/Moscow")
t := time.Date(2026, time.September, 4, 18, 4, 5, 0, loc)
res := t.Format(time.RFC3339)
fmt.Println(res)
}
Результат выполнения кода:
"2026-09-04T18:04:05+03:00"
Смотрите также
-
константу
time.RFC3339Nano,
которая включает наносекунды в формате RFC 3339 -
константу
time.RFC1123,
которая представляет формат RFC 1123 -
константу
time.RFC822,
которая представляет формат RFC 822 -
константу
time.RFC850,
которая представляет формат RFC 850