首先,在你的代码文件顶部引入 `time` 标准包:
go
import (
"fmt"
"time"
)
接下来是核心部分:获取和格式化包含毫秒的时间戳。
由于 time.Time 类型默认精度只到纳秒级别,因此直接通过 `time.Now()` 函数即可获得包括毫秒在内的当前时刻:
go
now := time.Now()
然而,默认情况下使用 fmt.Println 打印出的是不带微秒或毫秒的时间字符串。为了显示带有毫秒的信息,我们需要对 now 进行自定义格式化的操作。这可以通过 Format 方法完成,该方法接受一个符合 strftime 规则的格式字串:
go
formattedTime := now.Format("2006-01-02 15:04:05.000")
上述Format函数中的 `"2006-01-02 15:04:05.000"` 是按照年月日时分秒毫秒进行定制的格式描述符,其含义如下:
- “2006”代表四位数表示的公元年份;
- 后续“01”,“02”分别对应月份与日子两位数字形式展示;
- 再之后的“15”, “04”, 和“05”分别为小时、分钟及秒钟的两位置零填充表达方式;
- 最后的“.000”用于指定三位小数点后缀以展现毫秒级细节。
最后一步就是将格式化好的时间内容打印出来:
go
fmt.Printf("Current Time (including milliseconds): %s\n", formattedTime)
综上所述,完整的示例代码片段为:
go
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
formattedNowWithMillisec := now.Format("2006-01-02 15:04:05.000")
fmt.Printf("The current date and time with millisecond precision is: %s\n", formattedNowWithMillisec)
}
运行这段程序将会显示出类似这样的结果:“2023-07-8 9:15:30.123”的当前时间(具体取决于执行此段代码的实际时间)。