zoukankan      html  css  js  c++  java
  • Golang json转换时间格式

    在开发中,将时间转换成json时,默认是把时间转换为 RFC3339 格式

    2018-01-14T21:45:54+08:00 这个貌似是GO的诞生的时间

    先来看看time包中对格式的常量定义

    const (
        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"
    )
    

    怎样把这个时间2018-01-14T21:45:54+08:00转化为2018-01-14 21:45:54呢? 方法其实很简单

    str:="2018-01-14T21:45:54+08:00"
    
    //先将时间转换为字符串
    tt,_:=time.Parse("2006-01-02T15:04:05Z07:00",str)
    
    //然后格式化时间,就可以得到自己想要的时间了
    fmt.Println(tt.Format("2006-01-02 15:04:05"))
    

    time.Parse()的layout参数 就是上面常量定义的 RFC3339 如果其他格式 也只要复制对应的layout 就可以了

    tt.Format()是将时间按照 自定义的方式 进行个格式化 这里的 2006-01-02 15:04:05 一定不能变

  • 相关阅读:
    集合合并
    非递减有序集合合并
    有序的双链表的实现
    单链表的实现
    构造有序的单链表
    约瑟夫环问题
    javaweb学习笔记
    Intellij IDEA快捷键
    JAVA:创建类和对象
    JAVA:成员变量和局部变量的区别
  • 原文地址:https://www.cnblogs.com/niuben/p/14297871.html
Copyright © 2011-2022 走看看