java - 将 iCalendar DateTime 转换为 Java Date 对象

标签 java date datetime icalendar

我有 UTC 格式的 iCalendar DateTime 值 20160217T121209Z。谁能告诉我如何解析并将其转换为 Java Date 对象,该对象也包含时间值?

更新:我的最终值,当我打印日期时必须是这样的:

2016 年 2 月 17 日星期三 12:12:09 CET

最佳答案

请不要忘记将尾随 Z 解释为 UTC+00:00,这是 ISO-8601 标准。

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
java.util.Date d = sdf.parse("20151217T174218Z");
System.out.println(d); // output in your system timezone using toString()

如果您使用的是 Java-7 或更高版本,您还可以使用模式“yyyyMMdd'T'HHmmssX”并省略设置 UTC 引用的第二行。

关于java - 将 iCalendar DateTime 转换为 Java Date 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35454767/

相关文章:

java - Apache POI 时间单元

java - 在不同的 Activity 中传递来自服务器的不同响应

java - 在 PowerMock 中注入(inject)模拟时出现 NullPointerException

javascript - 如何使用 JavaScript date-fns 库在特定时区格式化日期/时间

php - 如何在数组的开头和结尾添加缺失的日期?

python-3.x - 奇怪的 Pandas 日期切片行为(不切片日期)

mysql从日期格式中提取月份

javascript - JavaScript 中的日期和时间验证

java - 为不同的参数和类型编写具有相同业务逻辑的方法的最佳方法?

oracle - 日期字符串在日期范围选择语句中不起作用