首頁 > 後端開發 > Golang > 主體

用time.Parse解析前後時間不同

WBOY
發布: 2024-02-05 22:33:08
轉載
511 人瀏覽過

用time.Parse解析前後時間不同

問題內容

我需要接收一個字串形式的時間,解析它,然後再次將其呈現為字串:

package main

import ("fmt"; "time")

func main() {
  const timelayout = "mon, jan 2, 2006 15:04 pm"
  sourcetime :=      "mon, apr 7, 2025 7:36 pm"
  mytime, err := time.parse(timelayout, sourcetime)
  if err != nil { panic(err) }
  fmt.printf("\t\tsourcetime = \"%s\"\n mytime.format(timelayout) = \"%s\"\n",
    sourcetime, mytime.format(timelayout))
}
登入後複製

這是我的預期輸出:

sourcetime = "mon, apr 7, 2025 7:36 pm"
 mytime.format(timelayout) = "mon, apr 7, 2025 7:36 pm"
登入後複製

但是我收到了這個奇怪的輸出:

sourceTime = "Mon, Apr 7, 2025 7:36 PM"
 myTime.Format(timeLayout) = "Mon, Apr 7, 2025 19:36 PM"
登入後複製

我沒有更改變數中的某些內容,那麼為什麼我會收到相同佈局的不同結果?我不應該改變這個時間佈局。但我需要再次接收來源字串作為結果。


正確答案


您的時間佈局使用24 小時制(例如15:04 而不是3:04),因此當您格式化它時,您會得到19 而不是7。如果您想要 12 小時制,那麼您的時間佈局應為 “2006 年 1 月 2 日星期一下午 3:04”

以上是用time.Parse解析前後時間不同的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板