golang 记录time包的小方法
2019-07-24 18:03
183 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39998006/article/details/97147188
获取今天星期几
//获取今天星期几 func GetWeek() string { t := time.Now() week := t.Weekday().String() switch week { case "Monday": return "星期一" case "Tuesday": return "星期二" case "Wednesday": return "星期三" case "Thursday": return "星期四" case "Friday": return "星期五" case "Saturday": return "星期六" default: return "星期日" } }
时间戳转换时间
//时间戳转换时间 //@param num 时间戳 //@param option 时间戳转换的格式 //@return args 格式化时间 func GetStampToFormat(num int64,option string) string { format := make(map[string]interface{}) format["YmdHis"] = "2006-01-02 15:04:05" switch option { case "YmdHis": return time.Unix(num,0).Format("2006-01-02 15:04:05") case "YmdHi": return time.Unix(num,0).Format("2006-01-02 15:04") case "Ymd": return time.Unix(num,0).Format("2006-01-02") case "ANSIC": return time.Unix(num,0).Format("Mon Jan _2 15:04:05 2006") case "UnixDate": return time.Unix(num,0).Format("Mon Jan _2 15:04:05 MST 2006") case "RFC822Z": return time.Unix(num,0).Format("02 Jan 06 15:04 -0700") case "RFC850": return time.Unix(num,0).Format("Monday, 02-Jan-06 15:04:05 MST") case "RFC1123": return time.Unix(num,0).Format("Mon, 02 Jan 2006 15:04:05 MST") case "RFC1123Z": return time.Unix(num,0).Format("Mon, 02 Jan 2006 15:04:05 -0700") case "RFC3339": return time.Unix(num,0).Format("2006-01-02T15:04:05Z07:00") case "RFC3339Nano": return time.Unix(num,0).Format("2006-01-02T15:04:05.999999999Z07:00") case "Kitchen": return time.Unix(num,0).Format("3:04PM") case "Stamp": return time.Unix(num,0).Format("Jan _2 15:04:05") case "StampMilli": return time.Unix(num,0).Format("Jan _2 15:04:05.000") case "StampMicro": return time.Unix(num,0).Format("Jan _2 15:04:05.000000") case "StampNano": return time.Unix(num,0).Format("Jan _2 15:04:05.000000000") default: return time.Unix(num,0).Format("2006-01-02 15:04:05") } }
获取指定时间的unix时间戳 最大支持到天
//获取19位unix时间戳 //@param option 单位 //@param unix UnixNano时间戳 //@param num 增加或减少的数量 //@return args 19位时间戳 func GetTimeStamp(option string,unix int64,num int) int64 { Nanosecond := 1 //毫微秒 十亿分之一秒 Microsecond := 1000 * Nanosecond //微秒 百万分之一秒 Millisecond := 1000 * Microsecond //毫秒 Second := 1000 * Millisecond Minute := 60 * Second Hour := 60 * Minute Day := 60 * Hour switch option { case "h": return unix + int64(Hour * num) case "m": return unix + int64(Minute * num) case "s": return unix + int64(Second * num) case "hs": return unix + int64(Millisecond * num) case "ws": return unix + int64(Microsecond * num) case "hws": return unix + int64(Nanosecond * num) case "d": return unix + int64(Nanosecond * Day) default: return unix + int64(Second * num) } }
获取10位的unix时间戳
//获取10位unix时间戳 //@param option 单位 //@param unix UnixNano时间戳 //@param num 增加或减少的数量 //@return args 10位时间戳 func GettimeUnixStapm(option string,unix int64,num int) int64{ return GetTimeStamp(option,unix,num) / 1000000000 }
md5加密方法
//字符串md5加密 func StringMd5(s string) string { data := []byte(s) has := md5.Sum(data) return fmt.Sprintf("%x", has) //将[]byte转成16进制 }
相关文章推荐
- 用datediff(day,time1,time2)方法取当天所有记录
- golang语言渐入佳境[28]-time包核心方法
- golang 记录函数执行耗时的一个简单方法。
- python time datetime模块使用方法记录
- Golang记录、计算函数执行耗时、运行时间的一个简单方法
- django学习记录-cmd方式插件数据报:“RuntimeWarning: DateTimeField Event.start_time received a naive datetime
- [转]MSSQL、MYSQL,ACCESSl,Oracle随机读取N条记录方法
- 让Apache日志不记录图片等指定扩展名文件的设置方法
- DataTime.ToString 的方法。
- 用php制作简单分页(从数据库读取记录)的方法详解
- 关于 4000 活动目录中DNS没有SRV记录的解决方法
- 记录一下自己总结出来的,在内网环境下使用maven打包的各种方法,包括各种常用的打包方式(一)
- /var/log/secure 直接删除之后不再写入记录解决方法和限制错误登陆ssh功能的脚本
- Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call.... 此错误的解决方法
- 在unittest中使用 logging 模块记录测试数据的方法
- 工作记录:从action中请求另一个系统的方法,发送http请求
- 【方法3:Perl版本】删除Map中Value重复的记录,并且只保留Key最小的那条记录
- 服务端(java)-原生方法记录-获取服务器信息的方法
- 当nginx 500 伪静态错误时,记录解决方法rewrite or internal redirection cycle while processing
- asp.net更新指定记录的方法