如何使用golang将UTC转换为印度当地时间

时间:2018-01-24 12:27:21

标签: datetime go time

提及下面的代码

 loc, _ := time.LoadLocation("Asia/Kolkata")
        now := time.Now().In(loc)
        fmt.Println("Location : ", loc, " Time : ", now)
        visit.Time = now

获得UTC时间,但我需要在我的数据存储区中获取IST

2 个答案:

答案 0 :(得分:2)

Go Playground中,这是按预期工作的。

  

About the Playground

     

Go Playground是一个在golang.org服务器上运行的Web服务。   该服务接收Go程序,编译,链接和运行   程序在沙箱中,然后返回输出。

     

可以在中运行的程序有一些限制   操场:

     

在操场上,时间从2009-11-10 23:00:00 UTC开始   (确定这个日期的重要性是一个练习   读者)。这样可以更轻松地通过提供程序来缓存程序   确定性输出。

     

文章“Inside the Go Playground”描述了操场的方式   实现。

package main

import (
    "fmt"
    "time"
)

func main() {
    loc, _ := time.LoadLocation("Asia/Kolkata")
    now := time.Now().In(loc)
    fmt.Println("Location : ", loc, " Time : ", now)
}

游乐场:https://play.golang.org/p/l8t3BnQATg7

输出:

Location :  Asia/Kolkata  Time :  2009-11-11 04:30:00 +0530 IST

答案 1 :(得分:0)

IST的正确参数是“ Asia / Calcutta”,而不是“ Asia / Kolkata”。这是完整列表https://golang.org/src/time/zoneinfo_abbrs_windows.go