go 语言 time 类型转换成 字符串
时间: 2023-07-07 20:43:31 浏览: 205
在 Go 语言中,可以使用 Time 类型的 `Format()` 方法将时间类型转换为字符串。示例代码如下:
```go
package main
import (
"fmt"
"time"
)
func main() {
t := time.Date(2021, 9, 22, 11, 30, 0, 0, time.Local)
str := t.Format("2006-01-02 15:04:05")
fmt.Println(str)
}
```
运行结果类似于:
```
2021-09-22 11:30:00
```
在 `Format()` 方法中,时间格式字符串中的数字和符号代表不同的时间单位或分隔符,例如:
- `2006` 表示年份,因为 Go 语言的诞生年份为 2006 年。
- `01` 表示月份,`02` 表示日期,`15` 表示小时,`04` 表示分钟,`05` 表示秒数。
- `-` 和 `:` 是分隔符,可以根据需要进行添加或修改。
相关问题
go 语言 时间戳转换成字符串
在 Go 语言中,可以使用 `time.Unix()` 函数将时间戳转换为时间类型,然后再使用 `Format()` 方法将时间类型转换为字符串。示例代码如下:
```go
package main
import (
"fmt"
"time"
)
func main() {
timestamp := int64(1632310200) // 时间戳,单位为秒
t := time.Unix(timestamp, 0)
str := t.Format("2006-01-02 15:04:05")
fmt.Println(str)
}
```
运行结果类似于:
```
2021-09-22 11:30:00
```
在 `time.Unix()` 函数中,第一个参数为时间戳,单位为秒;第二个参数为纳秒级别的偏移量,可以忽略。在 `Format()` 方法中,时间格式字符串的含义和使用方法与上一个问题中的相同。
go 语言字符串时间类型转换成 *time.Time
可以使用 time.Parse 函数将字符串时间类型转换成 *time.Time。
示例代码:
```
package main
import (
"fmt"
"time"
)
func main() {
strTime := "2021-08-31 12:30:45"
layout := "2006-01-02 15:04:05"
t, err := time.Parse(layout, strTime)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(t)
}
```
解释:
- `strTime` 是需要转换的字符串时间类型。
- `layout` 是字符串时间类型的格式,需要与 `strTime` 的格式一致。
- `time.Parse(layout, strTime)` 将字符串时间类型转换成 *time.Time。
- 错误处理。
输出:
```
2021-08-31 12:30:45 +0000 UTC
```
阅读全文