go 时间戳 时间转换 文件修改时间
package main
import (
"log"
"os"
"time"
"fmt"
)
func main() {
datetime := "2015-01-01 00:00:00" //待转化为时间戳的字符串
//日期转化为时间戳
timeLayout := "2006-01-02 15:04:05" //转化所需模板
loc, _ := time.LoadLocation("Local") //获取时区
tmp, _ := time.ParseInLocation(timeLayout, datetime, loc)
timestamp := tmp.Unix() //转化为时间戳 类型是int64
fmt.Println(timestamp)
//时间戳转化为日期
datetime = time.Unix(timestamp, 0).Format(timeLayout)
fmt.Println(datetime)
timestamp1 := GetFileModTime("./test.go")
fmt.Println( time.Unix(timestamp1, 0).Format(timeLayout) )
}
//获取文件修改时间 返回unix时间戳
func GetFileModTime(path string) int64 {
f, err := os.Open(path)
if err != nil {
log.Println("open file error")
return time.Now().Unix()
}
defer f.Close()
fi, err := f.Stat()
if err != nil {
log.Println("stat fileinfo error")
return time.Now().Unix()
}
return fi.ModTime().Unix()
}

浙公网安备 33010602011771号