时间戳中的“ m”是什么?如何在没有“ m”的情况下获取时间戳?

时间:2019-02-17 16:10:53

标签: go timestamp

在Go中,获取time.Now()以 m = xx.xxxx ... 跟踪时间戳, m 是什么意思?

如何在打印时将其删除,或者是否有其他方法或功能可以在没有 m

的情况下获得时间戳记

例如:-for time.Now()获取输出=> 2009-11-10 23:00:00 +0000 UTC m = + 0.000000001

但是我需要这样的输出=> 2009-11-10 23:00:00 +0000 UTC

2 个答案:

答案 0 :(得分:2)

您需要的是:

    time.Now().Truncate(0)

根据文档时间。String()

  

如果时间具有单调时钟读数,则返回的字符串包括最后一个字段“ m =±”,其中value是单调时钟读数,格式为秒的十进制数。

还有时间。Truncate()godoc说:

  

Truncate返回将t向下舍入为d的倍数的结果(因为零时间)。如果d <= 0,则Truncate返回t,去除了所有单调时钟读数,但未更改。

答案 1 :(得分:2)

  

我需要这样的输出=> 2009-11-10 23:00:00 +0000 UTC


  

Package time

     

导入“时间”

     

单音时钟

     

操作系统同时提供“挂钟”,这取决于   更改时钟同步和“单调时钟”,即   不。一般规则是,挂钟用于告知时间,   单调时钟用于测量时间。与其拆分API,   在这个包中,time返回的是time.Now包含一堵墙   时钟读数和单调时钟读数;以后讲故事   操作使用挂钟读数,但稍后要进行时间测量   运算,特别是比较和减法,使用   单调时钟读取。

     

剥离单调时钟读数的典型方法是使用t =   t.Round(0)。

     

func (Time) Round 1.1

func (t Time) Round(d Duration) Time
     

Round返回将t舍入到d的最接近倍数的结果   (自零时间开始)。中途值的舍入行为是   围捕。如果d <= 0,则Round返回去除了任何单调时钟的t   阅读,但其他方面不变。

     

func (Time) String

func (t Time) String() string
     

字符串返回使用格式字符串格式化的时间

     

如果时间具有单调时钟读数,则返回字符串   包括最后一个字段“ m =±”,其中值是单调的   时钟读数格式为秒的十进制数。


  

剥离单调时钟读数的典型方法是使用   t = t.Round(0)

例如,

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Now()
    fmt.Println(t)
    fmt.Println(t.Round(0))
}

游乐场:https://play.golang.org/p/nglDbs9IGdU

输出:

2009-11-10 23:00:00 +0000 UTC m=+0.000000001
2009-11-10 23:00:00 +0000 UTC