go-carbon 1.2.6 版本发布,优化错误处理机制,弃用出错直接 panic 的粗暴处理方式

栏目: 软件资讯 · 发布时间: 5年前

内容简介:carbon 是一个轻量级、语义化、对开发者友好的Golang时间处理库,支持链式调用、农历和gorm、xorm等主流orm 如果您觉得不错,请给个 star 吧 github:github.com/golang-module/carbon gitee:gitee.com/go-packag...

carbon 是一个轻量级、语义化、对开发者友好的Golang时间处理库,支持链式调用、农历和gorm、xorm等主流orm

如果您觉得不错,请给个 star 吧
github:github.com/golang-module/carbon
gitee:gitee.com/go-package/carbon

错误处理

如果有多个错误发生,只返回第一个错误信息,前一个错误排除后才返回下一个错误信息。建议使用 SetTimezone ()、Parse ()、ParseByFormat ()、ParseByDuration ()、AddDuration ()、SubDuration () 等方法时先进行错误处理判断,除非你能确保传入参数无误

场景一

c := carbon.SetTimezone(PRC).Parse("123456")
if c.Error != nil {
 // 错误处理... fmt.Println(c.Error)}
fmt.Println(c.ToDateTimeString())
// 输出
the value "123456" and layout "2006-01-02 15:04:05" don't match

场景二

c := carbon.SetTimezone("XXXX").Parse("2020-08-05")
if c.Error != nil {
 // 错误处理... fmt.Println(c.Error)}
fmt.Println(c.ToDateTimeString())
// 输出
invalid timezone "XXXX", please see the $GOROOT/lib/time/zoneinfo.zip file for all valid timezone

场景三

c := carbon.SetTimezone("XXXX").Parse("12345678")
if c.Error != nil {
 // 错误处理... fmt.Println(c.Error)}
fmt.Println(c.ToDateTimeString())
// 输出
invalid timezone "XXXX", please see the $GOROOT/lib/time/zoneinfo.zip file for all valid timezone

更新日志

  • 更新 readme.md 文档
  • 完善单元测试代码覆盖率
  • arbon 结构体的 Loc 私有属性改成 Loc 公开属性
  • carbon 结构体新增 Error 公开属性
  • 优化错误处理机制,弃用出错直接 panic 的粗暴处理方式
  • 新增 AddCenturies () 方法获取 N 世纪后时间
  • 新增 AddCentury () 方法获取一世纪后时间
  • 新增 SubCenturies () 方法获取 N 世纪前时间
  • 新增 SubCentury () 方法获取一世纪前时间
  • 新增 NextCenturies () 方法获取 N 世纪后时间 (不跨月)
  • 新增 NextCentury () 方法获取一世纪后时间 (不跨月)
  • 新增 PreCenturies () 方法获取 N 世纪前时间 (不跨月)
  • 新增 PreCentury () 方法获取一世纪前时间 (不跨月)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

超级连接者:破解新互联时代的成功密码

超级连接者:破解新互联时代的成功密码

伊桑•祖克曼(ETHAN ZUCKERMAN) / 林玮、张晨 / 浙江人民出版社 / 2018-8-1 / CNY 72.90

● 我们生活在一个互联互通的世界,我们需要辩证地看待某些事件,发现隐藏在背后的真相。着眼当下,看清彼此之间的联系,而非凭空幻想未来世界联系之紧密。数字世界主义要求我们承担起责任,让隐藏的联系变成现实。 ● 我们对世界的看法是局限的、不完整的、带有偏见的。如果我们想要改变从这个广阔的世界所获取的信息,我们需要做出结构性的改变。 ● 建立联系是一种新的力量。无论是在国家层面、企业层面还是个......一起来看看 《超级连接者:破解新互联时代的成功密码》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具