golang日期转字符串,仿照C#中的日期格式结构体
1、日期格式集合、日期转字符串方法
package util import (
"strings"
"time"
)
//日期格式:模仿java中的结构体
type DateStyle string const (
MM_DD = "MM-dd"
YYYYMM = "yyyyMM"
YYYY_MM = "yyyy-MM"
YYYY_MM_DD = "yyyy-MM-dd"
YYYYMMDD = "yyyyMMdd"
YYYYMMDDHHMMSS = "yyyyMMddHHmmss"
YYYYMMDDHHMM = "yyyyMMddHHmm"
YYYYMMDDHH = "yyyyMMddHH"
YYMMDDHHMM = "yyMMddHHmm"
MM_DD_HH_MM = "MM-dd HH:mm"
MM_DD_HH_MM_SS = "MM-dd HH:mm:ss"
YYYY_MM_DD_HH_MM = "yyyy-MM-dd HH:mm"
YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"
YYYY_MM_DD_HH_MM_SS_SSS = "yyyy-MM-dd HH:mm:ss.SSS" MM_DD_EN = "MM/dd"
YYYY_MM_EN = "yyyy/MM"
YYYY_MM_DD_EN = "yyyy/MM/dd"
MM_DD_HH_MM_EN = "MM/dd HH:mm"
MM_DD_HH_MM_SS_EN = "MM/dd HH:mm:ss"
YYYY_MM_DD_HH_MM_EN = "yyyy/MM/dd HH:mm"
YYYY_MM_DD_HH_MM_SS_EN = "yyyy/MM/dd HH:mm:ss"
YYYY_MM_DD_HH_MM_SS_SSS_EN = "yyyy/MM/dd HH:mm:ss.SSS" MM_DD_CN = "MM月dd日"
YYYY_MM_CN = "yyyy年MM月"
YYYY_MM_DD_CN = "yyyy年MM月dd日"
MM_DD_HH_MM_CN = "MM月dd日 HH:mm"
MM_DD_HH_MM_SS_CN = "MM月dd日 HH:mm:ss"
YYYY_MM_DD_HH_MM_CN = "yyyy年MM月dd日 HH:mm"
YYYY_MM_DD_HH_MM_SS_CN = "yyyy年MM月dd日 HH:mm:ss" HH_MM = "HH:mm"
HH_MM_SS = "HH:mm:ss"
HH_MM_SS_MS = "HH:mm:ss.SSS"
) //日期转字符串
func FormatDate(date time.Time, dateStyle DateStyle) string {
layout := string(dateStyle)
layout = strings.Replace(layout, "yyyy", "2006", 1)
layout = strings.Replace(layout, "yy", "06", 1)
layout = strings.Replace(layout, "MM", "01", 1)
layout = strings.Replace(layout, "dd", "02", 1)
layout = strings.Replace(layout, "HH", "15", 1)
layout = strings.Replace(layout, "mm", "04", 1)
layout = strings.Replace(layout, "ss", "05", 1)
layout = strings.Replace(layout, "SSS", "000", -1) return date.Format(layout)
}
2、测试代码
package main import (
"fmt"
"time"
"util"
) func main() {
fmt.Println(util.FormatDate(time.Now(), util.HH_MM))
fmt.Println(util.FormatDate(time.Now(), util.HH_MM_SS))
fmt.Println(util.FormatDate(time.Now(), util.HH_MM_SS_MS))
fmt.Println(util.FormatDate(time.Now(), util.MM_DD))
fmt.Println(util.FormatDate(time.Now(), util.MM_DD_CN))
fmt.Println(util.FormatDate(time.Now(), util.MM_DD_EN))
fmt.Println(util.FormatDate(time.Now(), util.MM_DD_HH_MM))
fmt.Println(util.FormatDate(time.Now(), util.MM_DD_HH_MM_CN))
fmt.Println(util.FormatDate(time.Now(), util.MM_DD_HH_MM_EN))
fmt.Println(util.FormatDate(time.Now(), util.MM_DD_HH_MM_SS))
fmt.Println(util.FormatDate(time.Now(), util.MM_DD_HH_MM_SS_CN))
fmt.Println(util.FormatDate(time.Now(), util.MM_DD_HH_MM_SS_EN))
fmt.Println(util.FormatDate(time.Now(), util.YYMMDDHHMM))
fmt.Println(util.FormatDate(time.Now(), util.YYYYMM))
fmt.Println(util.FormatDate(time.Now(), util.YYYYMMDD))
fmt.Println(util.FormatDate(time.Now(), util.YYYYMMDDHH))
fmt.Println(util.FormatDate(time.Now(), util.YYYYMMDDHHMM))
fmt.Println(util.FormatDate(time.Now(), util.YYYYMMDDHHMMSS))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_CN))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD_CN))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD_EN))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD_HH_MM))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD_HH_MM_CN))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD_HH_MM_EN))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD_HH_MM_SS))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD_HH_MM_SS_CN))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD_HH_MM_SS_EN))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD_HH_MM_SS_SSS))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_DD_HH_MM_SS_SSS_EN))
fmt.Println(util.FormatDate(time.Now(), util.YYYY_MM_EN)) fmt.Println(util.FormatDate(time.Now(), "yyyy/MM/dd HH:mm:ss.SSSSSSSSS"))
fmt.Println(util.FormatDate(time.Now(), "2006 01 02 15:04:05.00000000"))
}
golang日期转字符串,仿照C#中的日期格式结构体的更多相关文章
- 表单中的日期 字符串和Javabean中的日期类型的属性自动转换
搞了一上午的bug最终还是因为自己springMVC的注解不熟悉的原因,特记录. 在实际操作中经常会碰到表单中的日期 字符串和Javabean中的日期类型的属性自动转换, 而springMVC默认不支 ...
- MySQL中日期与字符串相互转换,并进行日期比较查询
技术交流群:233513714 1.日期无需转换查询(日期在数据库中的类型为字符串) select * from day where dateTime > '2016-03-15' 2.使用da ...
- Java中Date()类 日期转字符串、字符串转日期的问题(已解决)
Java中Date()类 日期转字符串.字符串转日期的问题 今天在写东西的时候突然发现一个问题,就是先new 一个Date()然后将生成的值转为字符串, 然后再将转换后的字符串再次用new Date( ...
- android JAVA字符串转日期或日期转字符串(转)
用法: SimpleDateFormat sdf = new SimpleDateFormat( " yyyy-MM-dd HH:mm:ss " ); 这一行最重要,它确立了转换的 ...
- JAVA字符串转日期或日期转字符串
文章中,用的API是SimpleDateFormat,它是属于java.text.SimpleDateFormat,所以请记得import进 来! 用法: SimpleDateFormat sdf = ...
- java工具类(五)之日期格式字符串与日期实现互转
JAVA字符串转日期或日期转字符串 项目开发过程中需要实现日期格式的字符串与日期进行互转,并进行日期的加减操作. Demo如下: package weiming.lmapp.utils; import ...
- sql server中的日期详解使用(convert)
转自:http://blog.csdn.net/hehe520347/article/details/48496853 有个字段值例如2012-07-02 00:00:00.000 转化成 2012- ...
- (转)Java字符串转日期或日期转字符串
文章中,用的API是SimpleDateFormat,它是属于java.text.SimpleDateFormat,所以请记得import进 来! 用法: SimpleDateFormat sdf = ...
- JAVA字符串转日期或日期转字符串【转】
JAVA字符串转日期或日期转字符串[转] 文章中,用的API是SimpleDateFormat,它是属于java.text.SimpleDateFormat,所以请记得import进 来! 用法: S ...
随机推荐
- java要注意的问题1
一.优先返回空集合而非null 如果程序要返回一个不包含任何值的集合,确保返回的是空集合而不是null.这能节省大量的”if else”检查. public class getLocationName ...
- 第三课 Makefile文件的制作(上)
1.序言: 前面的课程讲解了从gcc编译过程到其实践,大家可以看到其实在这些步骤中有些是可以简化编译的,但由于参数多以及项目中文件数量多的原因难免会造成错误甚至是浪费大量的时间在这编译上,为此linu ...
- python selenium firefox使用
演示的版本信息如下: Python 3.6.0 Selenium 3.5.0 Firefox 55.0.3 geckodriver v1.0.18.0 win64 1.前提准备 1.1 安装pyth ...
- maven入门学习(一)
一.maven介绍 1.软件开发中我们为什么要使用maven呢?(纯属个人体会观点,如有错误,敬请指正) (1)其一,企业岗位需求,目前的IT开发招聘岗位上,基本都要求会使用maven. ...
- Java学习之垃圾回收
垃圾回收(GC) GC需要完成的三件事情: 哪些内存需要回收? 什么时候回收? 如何回收? 为什么"GC自动化"之后还要研究GC?当需要排查各种内存溢出.内存泄漏问题时,当GC成为 ...
- 《React-Native系列》3、RN与native交互之Callback、Promise
接着上一篇<React-Native系列>RN与native交互与数据传递,我们接下来研究另外的两种RN与Native交互的机制 一.Callback机制 首先Calllback是异步的, ...
- PHP练习题一
目录:1.如何使用php导入导出csv?2.php接收POST数据的方式有哪些?3.如何让json_encode()不转义斜杠?我在做服务器返回一些数据时需要返回一些地址,但是默认的json_code ...
- LeftoverDataException,依赖包,apache license 2.0
1. poi3.9 LeftoverDataException org.apache.poi.hssf.record.RecordInputStream$LeftoverDataException: ...
- python 之Tornado
一.Tomado Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webap ...
- Python连接MongoDB操作
1.安装PyMongo 注意:请勿安装“bson”软件包. PyMongo配有自己的bson包; 执行“pip install bson”或“easy_install bson”则会安装与PyMong ...