首页 > 其他分享 >golang日期格式转换

golang日期格式转换

时间:2022-10-30 15:31:43浏览次数:66  
标签:Jan 15 04 05 golang 日期 2006 格式

在日常开发的过程中,经常会遇到前端或接口调用返回的时间格式的字符串转换为time格式落库的诉求,在转换格式的的过程中经常会遇到如下报错:

golang日期格式转换_时间格式

问题的意思是,需要转换的字符串格式不正确。

原因分析

在使用​​time.ParseInLocation​​函数转换日期时,layout的格式选择有问题,图中需要转换的字符串的时间格式是time.RFC3339格式,改成这个就不报错了。

常见的日期格式:

  ANSIC       = "Mon Jan _2 15:04:05 2006"
UnixDate = "Mon Jan _2 15:04:05 MST 2006"
RubyDate = "Mon Jan 02 15:04:05 -0700 2006"
RFC822 = "02 Jan 06 15:04 MST"
RFC822Z = "02 Jan 06 15:04 -0700" // RFC822 with numeric zone
RFC850 = "Monday, 02-Jan-06 15:04:05 MST"
RFC1123 = "Mon, 02 Jan 2006 15:04:05 MST"
RFC1123Z = "Mon, 02 Jan 2006 15:04:05 -0700" // RFC1123 with numeric zone
RFC3339 = "2006-01-02T15:04:05Z07:00"
RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00"
Kitchen = "3:04PM"
// Handy time stamps.
Stamp = "Jan _2 15:04:05"
StampMilli = "Jan _2 15:04:05.000"
StampMicro = "Jan _2 15:04:05.000000"
StampNano = "Jan _2 15:04:05.000000000"

其中,字符串中的 T 并不代表任何东西.它只是 ISO 8601 组合日期时间格式 所需的分隔符.可以将其理解为 Time 的缩写

字符串中的 Z 代表时区偏移量(代表小时前的“+”号或“-”号)。所以图中的字符串日期符合​RFC3339​​日期格式

"2022-08-31T16:44:55+08:00" //"2006-01-02T15:04:05Z07:00"

因此,在大家需要对时间格式的字符串用​​time.ParseInLocation​​函数进行转换前,可以对照标准日期格式,选择相应的layout即可。

日期格式转换三方库

三方库:​​https://github.com/araddon/dateparse​

标签:Jan,15,04,05,golang,日期,2006,格式
From: https://blog.51cto.com/u_13622854/5807519

相关文章

  • PNG文件格式-笔记
    PNG注:笔记中拓扑图xmind源文件在其图片目录下什么是PNGPNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是替代GIF和TIFF文件格式,同时增加......
  • RAR文件格式-笔记
    RARRAR文件头526172211A0700RAR文件尾C43D7B00400700Rar文件主要由标记块,压缩文件头块,文件头块,结尾块组成。其每一块大致分为以下几个字段:名......
  • ZIP文件格式-笔记
    ZIPZIP文件头504B03040A000000ZIP文件尾504B050600000000+其他字符Zip文件主要由三部分构成,分别为压缩源文件数据区压缩源文件数据区中......
  • Vue学习笔记之el-date-picker组建时间格式化方式
    <el-date-pickersize="small"v-model="editData.startTime"type="datetime"placeholder="选择日期时间"value-format="yyyy-MM-ddHH:mm:ss"format="yyyy-MM-ddHH:mm......
  • js获取当前日期的前七天
    //获取当前日期的前7天getDays(){letoneDay=24*60*60*1000letendTime=newDate(Date.now()-oneDay)endTime=this.formatterDate(en......
  • EasyExcel导出Date类型格式处理
    EasyExcel导出Date类型格式处理​ 如果在导出的excel中有date时间类型的字段,直接导出会报错org.apache.poi.ss.usermodel.Cell.setCellValue(Ljava/time/LocalDateTime;)......
  • Golang 基于 flag 库实现一个命令行工具
     Golang标准库中的flag库提供了解析命令行选项的能力,我们可以基于此来开发命令行工具。 假设我们想做一个命令行工具,我们通过参数提供【城市】,它自动能够返回当前......
  • Markdown排版格式语法(持续更新)
    首行缩进&ensp;半角的空格&emsp;全角的空格需要首行缩进两个字符的话,连续使用以上任意一个两次即可。文本加粗<b>你好</b>文本加粗&&居中&&用黑体<center><font......
  • golang中的锁竞争问题
    当我们打印错误的时候使用锁可能会带来意想不到的结果。我们看下面的例子:packagemainimport("fmt""sync")typeCoursewarestruct{mutexsync.RWMutexIdint6......
  • golang中的nil接收器
    我们先看一个简单的例子,我们自定义一个错误,用来把多个错误放在一起输出:typeCustomErrorstruct{errors[]string}func(c*CustomError)Add(errstring){c.errors=......