当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


GO Time.Truncate用法及代码示例

GO语言"time"包中"Time.Truncate"类型的用法及代码示例。

用法:

func(t Time) Truncate(d Duration) Time

截断返回将 t 向下舍入为 d 的倍数(从零开始)的结果。如果 d <= 0,则 Truncate 返回 t 去除任何单调时钟读数,否则保持不变。

Truncate 对时间进行操作,作为从零时间开始的绝对持续时间;它不适用于当时的演示文稿形式。因此,Truncate(Hour) 可能会返回一个非零分钟的时间,具体取决于时间的位置。

例子:

package main

import (
    "fmt"
    "time"
)

func main() {
    t, _ := time.Parse("2006 Jan 02 15:04:05", "2012 Dec 07 12:15:30.918273645")
    trunc := []time.Duration{
        time.Nanosecond,
        time.Microsecond,
        time.Millisecond,
        time.Second,
        2 * time.Second,
        time.Minute,
        10 * time.Minute,
    }

    for _, d := range trunc {
        fmt.Printf("t.Truncate(%5s) = %s\n", d, t.Truncate(d).Format("15:04:05.999999999"))
    }
    // To round to the last midnight in the local timezone, create a new Date.
    midnight := time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, time.Local)
    _ = midnight

}

输出:

t.Truncate(  1ns) = 12:15:30.918273645
t.Truncate(  1µs) = 12:15:30.918273
t.Truncate(  1ms) = 12:15:30.918
t.Truncate(   1s) = 12:15:30
t.Truncate(   2s) = 12:15:30
t.Truncate( 1m0s) = 12:15:00
t.Truncate(10m0s) = 12:10:00

相关用法


注:本文由纯净天空筛选整理自golang.google.cn大神的英文原创作品 Time.Truncate。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。