You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java中如何将OffsetDateTime格式化为带无前置零UTC偏移的指定格式?

Java OffsetDateTime 格式化问题解决办法

要将OffsetDateTime格式化为"23.12.2022 at 12:00 (UTC+2)"的样式,核心是选择正确的时区偏移格式符,同时保留字面量"UTC":

解决方案代码

OffsetDateTime timestamp = OffsetDateTime.parse("2022-12-23T12:00:00.000+02:00");
// 使用小写x代替大写X,移除偏移量的前导零
DateTimeFormatter correctFormatter = DateTimeFormatter.ofPattern("dd.MM.uuuu 'at' HH:mm ('UTC'x)");
String result = timestamp.format(correctFormatter);
// 输出:23.12.2022 at 12:00 (UTC+2)

关键说明

  • 时区偏移格式符:
    原代码中的大写X会生成带前导零的偏移(如+02),而小写x会生成不带前导零的偏移(如+2),完全匹配需求。若偏移包含分钟(如+02:30),x会自动输出+2:30的格式,无需额外调整。
  • "UTC"字面量:
    用单引号'包裹的'UTC'属于固定文本,会直接原样输出,无需借助其他特殊格式符。

内容的提问来源于stack exchange,提问作者Oleg Sandro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 04:50:22