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

如何在Java中将"2020-03-11 16:27:31"转为"2020-03-11T16:27:31+00:00"格式

在Java中转换日期格式:"2020-03-11 16:27:31" → "2020-03-11T16:27:31+00:00"

别担心,这个转换用Java 8及以上版本引入的java.time日期时间API就能轻松搞定——这也是官方现在极力推荐的方案,比旧的Date/Calendar类好用太多,还自带线程安全属性。下面一步一步给你讲清楚:

核心思路

你的目标格式是带UTC时区偏移的ISO标准日期时间格式,所以我们需要完成两个核心步骤:

  1. 把原始的无时区日期字符串解析成本地日期时间对象
  2. 给这个本地时间加上UTC时区偏移,再格式化成目标格式

完整代码示例

import java.time.LocalDateTime;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.time.format.DateTimeFormatter;

public class DateConverter {
    public static void main(String[] args) {
        // 原始日期字符串
        String originalDateStr = "2020-03-11 16:27:31";
        
        // 1. 解析原始字符串为LocalDateTime(无时区信息)
        DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        LocalDateTime localDateTime = LocalDateTime.parse(originalDateStr, inputFormatter);
        
        // 2. 为本地时间添加UTC时区偏移,得到带时区的OffsetDateTime
        OffsetDateTime utcDateTime = localDateTime.atOffset(ZoneOffset.UTC);
        
        // 3. 格式化为目标字符串(用内置的ISO标准格式器,不用自己写复杂模式)
        DateTimeFormatter outputFormatter = DateTimeFormatter.ISO_OFFSET_DATE_TIME;
        String targetDateStr = utcDateTime.format(outputFormatter);
        
        // 输出结果:2020-03-11T16:27:31+00:00
        System.out.println(targetDateStr);
    }
}

关键细节补充

  • 解析时用的HH是24小时制的小时格式,如果你的原始字符串是12小时制(比如带AM/PM标识),要改成hh并加上a模式,例如yyyy-MM-dd hh:mm:ss a
  • DateTimeFormatter.ISO_OFFSET_DATE_TIME是JDK内置的标准格式器,刚好匹配你需要的yyyy-MM-dd'T'HH:mm:ssXXX格式,不用手动拼接复杂的模式字符串
  • 如果你的原始日期实际是某个特定时区的时间(比如北京时间东8区),而非UTC时间,那需要先把本地时间绑定到对应时区,再转成UTC:
import java.time.ZoneId;
import java.time.ZonedDateTime;

// 替换第二步的代码:
ZonedDateTime beijingDateTime = localDateTime.atZone(ZoneId.of("Asia/Shanghai"));
OffsetDateTime utcDateTime = beijingDateTime.toOffsetDateTime().withOffsetSameInstant(ZoneOffset.UTC);

为什么推荐用java.time API?

旧的SimpleDateFormat和Date类不仅线程不安全,而且API设计混乱,处理时区和日期转换时很容易踩坑。java.time包是JSR-310规范的实现,设计更清晰,功能更强大,几乎能覆盖所有日期时间处理场景。

内容的提问来源于stack exchange,提问作者Rochit Aggarwal

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 00:07:49