如何在Python中将ISO 8601时间戳转换为UTC日期格式
将ISO 8601时间戳转换为指定UTC日期格式
下面是几种主流编程语言的实现方案,可将2022-06-19T00:00:00+00:00转换为Jun 19, 2022:
Python 实现
使用标准库datetime即可完成转换:
from datetime import datetime iso_timestamp = "2022-06-19T00:00:00+00:00" # 解析ISO格式时间戳并转为UTC日期字符串 utc_date_str = datetime.fromisoformat(iso_timestamp).strftime("%b %d, %Y") print(utc_date_str) # 输出: Jun 19, 2022
fromisoformat:直接解析ISO 8601格式的时间字符串strftime("%b %d, %Y"):按要求格式化日期,%b代表缩写月份,%d代表两位日期,%Y代表四位年份
JavaScript 实现
利用Date对象和本地化日期格式化方法:
const isoTimestamp = "2022-06-19T00:00:00+00:00"; const date = new Date(isoTimestamp); // 指定UTC时区和目标格式 const utcDateStr = date.toLocaleDateString('en-US', { timeZone: 'UTC', month: 'short', day: 'numeric', year: 'numeric' }); console.log(utcDateStr); // 输出: Jun 19, 2022
- 必须设置
timeZone: 'UTC',避免本地时区对结果产生干扰
Java 实现(Java 8+)
使用java.time新日期时间API:
import java.time.OffsetDateTime; import java.time.format.DateTimeFormatter; public class IsoToUtcDate { public static void main(String[] args) { String isoTimestamp = "2022-06-19T00:00:00+00:00"; // 解析带偏移的时间戳 OffsetDateTime dateTime = OffsetDateTime.parse(isoTimestamp); // 定义目标格式 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMM dd, yyyy"); // 确保转为UTC时区后格式化 String utcDateStr = dateTime.withOffsetSameInstant(java.time.ZoneOffset.UTC).format(formatter); System.out.println(utcDateStr); // 输出: Jun 19, 2022 } }
内容的提问来源于stack exchange,提问作者ren
相关产品推荐
相关产品推荐

