【发布时间】:2023-02-03 12:55:05
【问题描述】:
我有一个格式为“MM:SS”的字符串“12:34”,我想将其转换为时间。持续时间。已经在这上面浪费了太多时间。我在这段代码中做错了什么:
package main
import (
"fmt"
"strings"
"time"
)
func parseDuration(input string) (time.Duration, error) {
var layout string
if strings.Count(input, ":") == 1 {
layout = "04:05"
} else {
layout = "15:04:05"
}
t, err := time.Parse(layout, input)
if err != nil {
return 0, err
}
return t.Sub(time.Time{}), nil
}
func main() {
input := "00:04"
duration, err := parseDuration(input)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(int(duration.Seconds())) // I should get 4 but I get -31622396
}
【问题讨论】:
标签: go