解析特定时区的时间
使用 time.ParseTime() 解析时间字符串时,生成的时间结构通常采用 UTC 格式。但是,如果您需要不同的时区,可以通过以下方法实现:
解决方案:
当时间到达时,利用 time.ParseInLocation 解析给定位置的时间区域没有明确指定。 time.Local 代表您当地的时区,因此将其作为 Location 传递将解决该问题:
<code class="go">import ( "fmt" "time" ) func main() { // Honor given time zone const formWithZone = "Jan 2, 2006 at 3:04pm (MST)" t, _ := time.ParseInLocation(formWithZone, "Jul 9, 2012 at 5:02am (CEST)", time.Local) fmt.Println(t) // Output: 2012-07-09 05:02:00 +0000 CEST // Default to local time zone const formWithoutZone = "Jan 2, 2006 at 3:04pm" t, _ = time.ParseInLocation(formWithoutZone, "Jul 9, 2012 at 5:02am", time.Local) fmt.Println(t) // Output: 2012-07-09 05:02:00 -0700 PDT }</code>
在第一个示例中,使用指定时区 (CEST) 解析时间并返回一个时间结构那个时区。在第二个示例中,由于未提供时区,因此以本地时区 (PDT) 解析时间。
以上是如何在Go中解析特定时区的时间?的详细内容。更多信息请关注PHP中文网其他相关文章!