Константа time.UnixDate
Константа time.UnixDate представляет собой строку формата
даты и времени, которая используется в системе Unix для
отображения даты. Данный формат выглядит как
"Mon Jan _2 15:04:05 MST 2006" и соответствует
представлению даты, используемому командой date в Unix.
Константа может быть использована для форматирования и парсинга
временных меток в стандартном Unix-формате.
Синтаксис
const UnixDate = "Mon Jan _2 15:04:05 MST 2006"
Пример использования для форматирования
Давайте получим текущее время и отформатируем его в формате
time.UnixDate:
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
res := now.Format(time.UnixDate)
fmt.Println(res)
}
Результат выполнения кода:
"Thu Sep 3 10:15:30 UTC 2026"
Пример использования для парсинга
Давайте распарсим строку в формате time.UnixDate и
преобразуем ее в объект time.Time:
package main
import (
"fmt"
"time"
)
func main() {
dateStr := "Thu Sep 3 10:15:30 UTC 2026"
res, err := time.Parse(time.UnixDate, dateStr)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(res)
}
Результат выполнения кода:
"2026-09-03 10:15:30 +0000 UTC"
При парсинге важно точно соблюдать формат строки,
включая количество пробелов между элементами даты.
Обратите внимание, что в формате time.UnixDate
перед днем месяца используется символ подчеркивания
для выравнивания однозначных чисел.
Пример сравнения разных констант
Давайте сравним вывод разных предопределенных констант форматирования, чтобы увидеть различия в представлении времени:
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
unixDate := now.Format(time.UnixDate)
rfc1123 := now.Format(time.RFC1123)
kitchen := now.Format(time.Kitchen)
fmt.Println("UnixDate:", unixDate)
fmt.Println("RFC1123:", rfc1123)
fmt.Println("Kitchen:", kitchen)
}
Результат выполнения кода:
"UnixDate: Thu Sep 3 10:15:30 UTC 2026"
"RFC1123: Thu, 03 Sep 2026 10:15:30 UTC"
"Kitchen: 10:15AM"
Как видно из примера, формат time.UnixDate
отображает полную информацию о дате и времени с указанием
часового пояса, что делает его удобным для логирования
и отладки в Unix-среде.
Смотрите также
-
константу
time.RFC1123,
которая представляет формат RFC 1123 для даты и времени -
константу
time.RubyDate,
которая представляет формат даты, используемый в языке Ruby -
константу
time.Kitchen,
которая представляет формат времени в кулинарном стиле -
метод
time.Time.Format,
который форматирует время с использованием заданного шаблона