go指定分隔符格式化时间
一、代码
package main import (
"fmt"
"strings"
"strconv"
"time"
) // StrToIntMonth 字符串月份转整数月份
func StrToIntMonth(month string) int {
var data = map[string]int{
"January" : 0,
"February" : 1,
"March" : 2,
"April" : 3,
"May" : 4,
"June" : 5,
"July" : 6,
"August" : 7,
"September" : 8,
"October" : 9,
"November" : 10,
"December" : 11,
};
return data[month];
} // GetTodayYMD 得到以sep为分隔符的年、月、日字符串(今天)
func GetTodayYMD(sep string) string {
now := time.Now()
year := now.Year()
month := StrToIntMonth(now.Month().String())
date := now.Day() var monthStr string
var dateStr string
if month < 9 {
monthStr = "" + strconv.Itoa(month + 1)
} else {
monthStr = strconv.Itoa(month + 1)
} if date < 10 {
dateStr = "" + strconv.Itoa(date)
} else {
dateStr = strconv.Itoa(date)
}
return strconv.Itoa(year) + sep + monthStr + sep + dateStr
} // GetTodayYM 得到以sep为分隔符的年、月字符串(今天所属于的月份)
func GetTodayYM(sep string) string {
now := time.Now()
year := now.Year()
month := StrToIntMonth(now.Month().String()) var monthStr string
if month < 9 {
monthStr = "" + strconv.Itoa(month + 1)
} else {
monthStr = strconv.Itoa(month + 1)
}
return strconv.Itoa(year) + sep + monthStr
} // GetYesterdayYMD 得到以sep为分隔符的年、月、日字符串(昨天)
func GetYesterdayYMD(sep string) string {
now := time.Now()
today := time.Date(now.Year(), now.Month(), now.Day(), 0, 0, 0, 0, time.Local)
todaySec := today.Unix() //秒
yesterdaySec := todaySec - 24 * 60 * 60; //秒
yesterdayTime := time.Unix(yesterdaySec, 0)
yesterdayYMD := yesterdayTime.Format("2006-01-02")
return strings.Replace(yesterdayYMD, "-", sep, -1)
} // GetTomorrowYMD 得到以sep为分隔符的年、月、日字符串(明天)
func GetTomorrowYMD(sep string) string {
now := time.Now()
today := time.Date(now.Year(), now.Month(), now.Day(), 0, 0, 0, 0, time.Local)
todaySec := today.Unix() //秒
tomorrowSec := todaySec + 24 * 60 * 60; //秒
tomorrowTime := time.Unix(tomorrowSec, 0)
tomorrowYMD := tomorrowTime.Format("2006-01-02")
return strings.Replace(tomorrowYMD, "-", sep, -1)
} func main() {
//当天
res0:=GetTodayYMD("*")
fmt.Println(res0)
//本月
res1:=GetTodayYM("-")
fmt.Println(res1)
//昨天
res2:=GetYesterdayYMD(".")
fmt.Println(res2)
//明天
res3:=GetTomorrowYMD(" ")
fmt.Println(res3)
}
二、结果
2019*11*26
2019-11
2019.11.25
2019 11 27
go指定分隔符格式化时间的更多相关文章
- js 格式化时间、字符串指定长度、随机字符串
格式化字符串长度 方法 function formatWidth(str, width){ str += '' if(str.length<width) '+str, width) else r ...
- js格式化时间(指定模板格式)
1 /** 格式化时间 2 * @param {string} date 需要格式化的时间 3 * @param {string} fmt 想要格式化的格式 4 */ 5 function forma ...
- python datetime模块用strftime 格式化时间
1 2 3 #!usr/bin/python import datetime datetime.datetime.now() 这个会返回 microsecond.因此这个是我们不需要的.所以得做一下修 ...
- Java格式化时间
Java格式化时间 将秒或者毫秒值格式化成指定格式的时间 效果图 工具类 工具类里我只列出了一种格式的格式化方式,可以根据自己的需求,修改"yyyy-MM-dd hh:mm:ss" ...
- js格式化时间的方法
方法一:用js格式化时间的方法. Date.prototype.format =function(format) { var o = { "M+" : this.getMonth( ...
- 项目心得——按照指定的日期/时间创建Date对象
项目心得——按照指定的日期/时间创建Date对象 有时,在做项目中,需要获得指定日期的Date对象,这个指定的日期或者时间可能不是当前的时间.下面讲解两种获取指定日期/时间的Date对象的方法: pa ...
- 表单生成器(Form Builder)之伪造表单数据番外篇——指定范围随机时间
为了伪造一些尽量真实的假数据,也真是够费劲的.上一篇笔记记录了一下获取一个随机车辆牌照,这篇笔记记录一下怎么获取一个随机时间.这篇就不说那么多废话了,直接上代码 // 获取指定范围的随机数 var g ...
- BUGFIX 09 - 记一次Java中String的split正则表达式匹配 - 引发`OutOfMemoryError: Java heap space`的oom异常 排查及解决 -Java根据指定分隔符分割字符串,忽略在引号里面的分隔符
问题简述 说白了,Java根据指定分隔符分割字符串,忽略在引号(单引号和双引号)里面的分隔符; oom压测的时候,正则匹配"(?=(?:[^\"]*\"[^\" ...
- MSSQL·将一对多的数据合并为以指定分隔符的数据
阅文时长 | 0.05分钟 字数统计 | 142.4字符 主要内容 | 1.引言&背景 2.Stuff函数语法&模拟场景 3.声明与参考资料 『MSSQL·将一对多的数据合并为以指定分 ...
随机推荐
- GPIO软件模拟IIC时序
一.MPU6050中的IIC时序 1.1 START和STOP SDA和SCL在高电平时,SDA拉低表示START.SCL拉低,表示可以传输数据. SDA和SCL在低电平时,SDA拉高表示STOP. ...
- BZOJ 2301 莫比乌斯反演入门
2301: [HAOI2011]Problem b Description 对于给出的n个询问,每次求有多少个数对(x,y),满足a≤x≤b,c≤y≤d,且gcd(x,y) = k,gcd(x,y)函 ...
- 阿里云Linux服务器购买、配置
购买.配置阿里云Linux服务器配置ftp发布网站全教程 http://blog.csdn.net/Jolesen/article/details/77505840
- Echarts mc地图
Echarts mc地图 echarts官网实例: https://gallery.echartsjs.com/editor.html?c=xSNlA5O-zl 效果: 代码: <html> ...
- 楼房重建 (rebuild)
楼房重建 (rebuild) 题目描述 小A的楼房外有一大片施工工地,工地上有N栋待建的楼房.每天,这片工地上的房子拆了又建.建了又拆.他经常无聊地看着窗外发呆,数自己能够看到多少栋房子.为了简化问题 ...
- CSS入门之盒模型(六分之四)
盒模型要点知识 务必注意看,这可是前端面试 必定会遇到 的问题. box-sizing 盒模型的主要CSS属性,除继承外有两个值: content-box 这里不再细说历史原因,只说其作用. cont ...
- Name your feature branches by convention
https://docs.microsoft.com/en-us/azure/devops/repos/git/git-branching-guidance?view=azure-devops Nam ...
- CentOS7.5 yum 安装与配置MySQL5.7.24
安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:https://dev.mysql.com/downloads/rep ...
- C/s模式&&B/S模式
C/s模式:是客户端/服务器(Client/Server)模式,主要指的是传统的桌面级的应用程序.比如我们经常用的信息管理系统. C/S 客户端/服务器 例如QQ,网络游戏,需要下载客户端才能访问服务 ...
- (转)SQL Server 2012 手动安装帮助文档+排错
逆天SQL Server 2012装的不要不要的,最后发现...竟然没帮助文档...汗啊!原来它跟vs一样要自己装帮助文档...好吧,官网一下载,妹的...报错...然后就让我们还原这个安装过程以及逆 ...