V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
gouguoyin
V2EX  ›  Go 编程语言

go-carbon v2.6.13 发布,一个轻量级、语义化的 golang 时间处理库

  •  
  •   gouguoyin ·
    kuafuRace · 8 天前 · 1056 次点击

    carbon 是一个轻量级、语义化、对开发者友好的 Golang 时间处理库,提供了对时间穿越、时间差值、时间极值、时间判断、星座、星座、农历、儒略日 / 简化儒略日、波斯历 / 伊朗历的支持。

    carbon 目前已捐赠给 dromara 开源组织,已被 awesome-go 收录,并获得 gitee 2024 年最有价值项目(GVP)和 gitcode 2024 年度 G-Star 项目,如果您觉得不错,请给个 star 吧

    gvp gstar

    document: carbon.go-pkg.com

    github: github.com/dromara/carbon

    gitee: gitee.com/dromara/carbon

    gitcode: gitcode.com/dromara/carbon

    更新内容
    • language.goSetLocale 方法中使用 sync.Once 确保语言文件只加载一次,使用 sync.Map 进行线程安全的缓存
    • helper.goformat2layout 方法中为转义字符处理添加边界检查,防止越界访问导致的 panic
    11 条回复    2025-10-16 09:58:51 +08:00
    Ipsum
        1
    Ipsum  
       8 天前 via Android
    点赞
    iseki
        2
    iseki  
       8 天前 via Android
    有没有实现了 threeten 模型的时间库?本来想自己搓一个,但是太麻烦了,工作量很大。
    gouguoyin
        3
    gouguoyin  
    OP
       8 天前
    @iseki 你说的是 java 的 ThreeTen-Extra 扩展么
    iseki
        4
    iseki  
       8 天前 via Android
    @gouguoyin java.time ,包括基础部分,如果有扩展部分更好
    gouguoyin
        5
    gouguoyin  
    OP
       8 天前
    @iseki 我查了下,目前 carbon 已经有 ThreeTen 的绝大部分功能,不知道你还缺什么功能
    iseki
        6
    iseki  
       8 天前 via Android
    @gouguoyin 我没看到你和 ThreeTen 对标的类型定义啊,类似 Instant LocalDateTime LocalDate ZonedDateTime 这样的东西。
    gouguoyin
        7
    gouguoyin  
    OP
       8 天前
    @iseki golang 不是完全面向对象的,不能完全按照 java 的模式去开发 golang 库,能实现同样的功能就可以
    gouguoyin
        8
    gouguoyin  
    OP
       8 天前
    @iseki carbon 提供了 SetTimezone 方法来方便切换时区,如
    carbon.Parse("2020-08-05 13:14:15").SetTimezone(carbon.PRC).ToString() // 2020-08-05 21:14:15 +0800 CST
    iseki
        9
    iseki  
       8 天前 via Android
    @gouguoyin 唔,不行,区分类型的一个目的是类型安全。
    比如我的函数入参是一个 Instant ,代表我不关心除绝对时间点之外的任何信息;如果入参是一个 LocalDate ,意味着我只接受一个日期,时间点该如何转换为当地日期是调用者需要考虑到事情。
    你这样的设计完全无法表达这个语义。
    dandankele
        10
    dandankele  
       7 天前
    才发现 dromara 社区有那么多熟悉的项目..这是个什么神奇的组织
    gouguoyin
        11
    gouguoyin  
    OP
       7 天前
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   1950 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 16:11 · PVG 00:11 · LAX 09:11 · JFK 12:11
    ♥ Do have faith in what you're doing.