Rumah  >  Artikel  >  pembangunan bahagian belakang  >  watak golang ke masa

watak golang ke masa

王林
王林asal
2023-05-13 09:36:074130semak imbas

Dalam bahasa Go, kami boleh menukar rentetan kepada jenis masa dengan sangat mudah, dan ia juga menyokong penukaran berbilang format masa. Artikel ini akan memperkenalkan cara menggunakan bahasa Go untuk menukar rentetan kepada jenis masa.

1. Pemformatan masa

Sebelum melakukan penukaran masa, kita perlu terlebih dahulu memahami cara memformat masa. Dalam bahasa Go, pemformatan masa ditakrifkan menggunakan templat masa "Isnin", "Jan", "2", "15:04:05", "MST", "2006", dll. dalam templat masa semuanya mewakili khusus. Kandungan masa mempunyai makna khusus dalam templat masa. Berikut ialah beberapa templat masa yang biasa digunakan:

时间模板                   描述
Mon                        月份简写
January                    月份全称
02                         月份中的日,带前导零
2                          月份中的日,不带前导零
15                         小时(24小时制),带前导零
3:04 PM                    小时(12小时制)
04                         小时中的分钟,带前导零
5                          小时中的分钟,不带前导零
05.000                     带秒的小数点
PM                         上午/下午标识符
MST                        时区缩写
2006                       年份,用于参考
06                         年份最后两位,用于参考
01                         相对于年份的月份,带前导零
Jan                        相对于年份的月份,不带前导零
02                         相对于月份的日,带前导零

Melalui templat masa di atas, kami boleh menentukan format masa yang kami perlukan.

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Now()
    fmt.Println(t.Format("2006-01-02 15:04:05"))
}

Dalam kod di atas, kami menggunakan templat masa "2006-01-02 15:04:05" untuk memformat masa dan hasil keluaran akhir ialah "2022-05-17 13:23: 51".

2. Tukar rentetan kepada masa

Dalam bahasa Go, kita boleh menggunakan kaedah Parse dalam pakej masa untuk menukar rentetan kepada jenis masa. Kaedah Parse memerlukan dua parameter Parameter pertama ialah rentetan masa, dan parameter kedua ialah format rentetan masa Kedua-dua parameter adalah jenis rentetan.

package main

 import (
     "fmt"
     "time"
 )

 func main() {
     str := "2022-05-17 13:23:51"
     layout := "2006-01-02 15:04:05"

     t, _ := time.Parse(layout, str)
     fmt.Println(t)
 }

Dalam kod di atas, kami menghantar rentetan masa "2022-05-17 13:23:51" dan templat masa "2006-01-02 15:04:05" ke dalam masa. Parse kaedah , dan akhirnya masa yang ditukar adalah output melalui fmt.Println.

3. Penukaran berbilang format masa

Dalam aplikasi praktikal, kami berkemungkinan menghadapi berbilang format masa yang berbeza dan pada masa ini kami perlu menyokong penukaran format berbilang masa. Bahasa Go menyediakan kaedah masa.ParseInLocation untuk menyokong penukaran format masa berbilang Kaedah ParseInLocation memerlukan tiga parameter Parameter pertama ialah rentetan masa, parameter kedua ialah templat masa dan parameter ketiga ialah zon waktu yang ditentukan.

package main

import (
    "fmt"
    "time"
)

func main() {
    str1 := "2022-05-17 13:23:51"
    layout1 := "2006-01-02 15:04:05"

    str2 := "2019/01/01 12:00:00"
    layout2 := "2006/01/02 15:04:05"

    loc, _ := time.LoadLocation("Asia/Shanghai")

    t1, _ := time.ParseInLocation(layout1, str1, loc)
    fmt.Println(t1)

    t2, _ := time.ParseInLocation(layout2, str2, loc)
    fmt.Println(t2)
}

Dalam kod di atas, kami menggunakan kaedah masa.ParseInLocation untuk menyokong dua penukaran format masa yang berbeza, dengan str1 dan susun atur1 mewakili format kali pertama, dan str2 dan susun atur2 mewakili format kali kedua. Tentukan zon waktu sebagai "Asia/Shanghai" melalui kaedah LoadLocation, dan akhirnya keluarkan masa dalam dua format berbeza melalui fmt.Println.

4. Ringkasan

Dalam bahasa Go, kita boleh menukar rentetan kepada jenis masa melalui kaedah masa.Parse dan masa.ParseInLocation dan menyokong penukaran format masa berbilang. Apabila kita perlu menukar jenis masa, kita boleh menggunakan kaedah di atas dan menggunakan templat masa yang sesuai untuk pemformatan masa.

Atas ialah kandungan terperinci watak golang ke masa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn