gpt4 book ai didi

go - 解析 hh :mm:ss time from stopwatch in Go?

转载 作者:IT王子 更新时间:2023-10-29 02:25:48 24 4
gpt4 key购买 nike

我在格式为 hh:mm:ss 的日志文件中有一系列类似秒表的时间戳,例如“00:03:30”。我将如何在 Golang 中解析此类时间戳,以便找到两个时间间隔之间的差异?

例如,替换 00:03:3000:03:00 应该返回 00:00:30 30

最佳答案

您可以一次减去另一次。

package main

import (
"fmt"
"time"
)

func main() {

t1, err := time.Parse("15:04:05", "03:00:30")
t2, err := time.Parse("15:04:05", "03:00:00")

fmt.Println(err, t1.Sub(t2), t1.Sub(t2).Seconds())
}

工作示例- https://play.golang.org/p/VegXLBvfnM

更新:如何处理超过 24:00:00 的持续时间?这样就可以手动解析它们:

func Parse(st string) (int, error) {
var h, m, s int
n, err := fmt.Sscanf(st, "%d:%d:%d", &h, &m, &s)
fmt.Print(n, err)
if err != nil || n != 3 {
return 0, err
}
return h*3600 + m*60 + s, nil
}

https://play.golang.org/p/HHSRHzaGqT

关于go - 解析 hh :mm:ss time from stopwatch in Go?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47067211/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com