近期项目使用到了时间和类型转换官方包,特此整理了一下, 方便大家查阅。
1.[]byte转为string:
data := [4]byte{0x31, 0x32, 0x33, 0x34}
str := string(data[:])
fmt.Println(str)
输出:
☁ 1107 go run main.go
1234
2.string 转为int64类型
//string 50转为10进制,64位
total, err := strconv.ParseInt("50", 10, 64)
输出:
☁ 1107 go run main.go
50
3.golang格式化为当前时间日期:
nowTime := time.Now()
//2006-01-02 15:04:05 此为固定用法,相当于php语言的Y-m-d H:i:s
fmt.Println(nowTime.Format("2006-01-02 15:04:05"))
输出:
☁ 1107 go run main.go
2017-11-07 21:19:46
4.返回当前本地时间:
func main() {
fmt.Println(time.Now())
}
输出:
☁ 1107 go run main.go
2017-11-07 21:23:00.070186567 +0800 CST m=+0.000317995
5.返回当前本地时间戳:
func main() {
fmt.Println(time.Now().Unix())
}
输出:
☁ 1107 go run main.go
1510061062
6.给定时间戳和日期字符串转为golang标准时间:
func main() {
//给定日期字符串
nowTime := time.Now()
//2006-01-02 15:04:05 此为固定用法,相当于php语言的Y-m-d H:i:s
x := nowTime.Format("2006-01-02 15:04:05")
p, _ := time.Parse("2006-01-02 15:04:05", x)
fmt.Println(p)
//给定时间戳
timestamp := time.Now().Unix()
fmt.Println(time.Unix(timestamp, 0))
}
输出:
☁ 1107 go run main.go
2017-11-07 21:31:24 +0000 UTC
2017-11-07 21:31:24 +0800 CST
7.计算程序运行时间:
func main() {
t1 := time.Now()
time.Sleep(time.Second * 2)
elapsed := time.Since(t1)
fmt.Println("程序运行时间为: ", elapsed)
}
输出:
☁ 1107 go run main.go
程序运行时间为: 2.004037981s