golang 将秒转化为小时分钟

golang 将秒转化为小时分钟

// 用到了golang的 time包
func GetDurationFormatBySecond(sec int) (formatString string) {
	if sec <= 60 {
		formatString = "1分钟"
		return
	}
	duration := time.Duration(int64(sec)) * time.Second
	h := int(duration.Hours())
	m := int(duration.Minutes()) % 60
	//s := int(duration.Seconds()) % 60
	if h > 0 {
		formatString = fmt.Sprintf("%d小时", h)
	}
	if m > 0 {
		formatString += fmt.Sprintf("%d分钟", m)
	}
	//if s > 0 {
	//	formatString += fmt.Sprintf("%d秒", s)
	//}
	return
}

这段代码要注意 %60的使用,因为time.Seconds()和time.Minutes()返回的是总的分钟和总的秒数,所以采用%60的形式取余数

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据