我正在尝试解析具有特定格式的当前时间戳,但每次尝试我都会得到一个java.time.format.DateTimeParseException
。我的代码:
ZonedDateTime.parse(
ZonedDateTime.now().toString(),
DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm:ss.SSS")
.withZone(ZoneId.of("UTC")) //I also tried ZoneId.systemDefault()
)
结果:
java.time.format.DateTimeParseException:
Text '2018-02-27T11:01:18.776+01:00[Europe/Berlin]' could not be parsed at index 2
问题是为什么我不能以所需的格式解析它以及如何实现它?
附言:我也看到了这篇文章,并尝试设置ZoneId
,但没有帮助。
这应该可以转换< code>now()结果字符串-
String inputStr = ZonedDateTime.now().toString();
ZonedDateTime parsed = ZonedDateTime.parse(inputStr, DateTimeFormatter.ISO_DATE_TIME)
System.out.println(parsed);
如果你想反过来转换日期-
DateTimeFormatter pattern = DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm:ss.SSS");
String parsed = pattern.format(ZonedDateTime.now());
System.out.println(parsed);
日期时间格式
"dd.MM.yyyy HH:mm:ss.SSS"
'2018-02-27T11:01:18.776+01:00[Europe/Berlin]'
ZonedDateTime.now().toString()
解析来自ZoneDateTime的结果。toString()
返回您根本不需要显式格式化程序:
System.out.println(ZonedDateTime.parse(
ZonedDateTime.now(ZoneId.of("Asia/Kuala_Lumpur")).toString()));
这打印
2018-02-27T21:48:16.214832 08:00[亚洲/Kuala_Lumpur]
您问题中的格式化程序非常适合格式化:
System.out.println(ZonedDateTime.now(ZoneId.of("Asia/Kuala_Lumpur"))
.format(DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm:ss.SSS")));
这是印刷的:
27.02.2018 21:48:16.237
你混淆了这个词的用法吗?解析意味着分析字符串以理解它,在这种情况下,将其转换为日期时间对象,如ZonedDateTime
。相反的转换称为格式化,将日期-时间对象转换为特定格式的字符串,通常用于人类可读性或数据交换。
我试图以以下格式解析来自MySql的数据: Java解析器代码如下: java线程“AWT-EventQueue-0”中出现异常。时间总体安排DateTimeParseException:无法解析文本“06-08-2017 04:15”:无法从临时助理获取ZonedDateTime:{MinuteOfHour=15,DayOfMonth=8,WeekBasedYear[WeekFields[SUN
问题内容: MySQL 和之间有什么区别? 问题答案: 对于此类问题,始终值得首先阅读手册。MySQL手册中的日期和时间函数 返回当前时间的DATE部分。CURDATE()手册 以各种格式返回日期和时间部分作为时间戳,具体取决于如何请求。NOW()手册。
如何从不包含zone和其他字段的字符串中解析ZoneDateTime? 以下是在斯波克进行的测试: 前两个测试通过,所有其他测试都通过了DateTimeParseException: '2014-04-23T04:30:45.123'无法在索引23处解析 '2014-04-23T04:30'无法在索引16处解析 '2014-04-23'无法在索引10处解析 如何解析时间和区域设置为默认的不完整日期
本文向大家介绍全面解析Java中的注解与注释,包括了全面解析Java中的注解与注释的使用技巧和注意事项,需要的朋友参考一下 注解 一、什么是 Annotation? (注解 or 注释) Annotation, 准确的翻译应该是 -- 注解。 和注释的作用完全不一样。 Annotation 是JDK5.0及以后版本引入的一个特性。 与类、接口、枚举是在同一个层次,可以成为java 的一个类型。 语
我对OffsetDateTime的用法非常陌生,我正在尝试将OffsetDateTime字符串与OffsetDateTime进行比较。以这种方式在java中使用now(), 但我正在学习java。时间总体安排所有3种情况下的DateTimeParseException。 然而,如果我将2个OffsetDateTime字符串与CompareTo方法进行比较,它的工作就很好了。 有没有人能在这方面给我