java.time:DateTimeParseException for date“20150901023302166”
发布时间:2020-05-24 11:00:42 所属栏目:Java 来源:互联网
导读:参见英文答案 Is java.time failing to parse fraction-of-second?2 LocalDateTime.parse(20150901023302166, DateTimeFormatter.ofPattern(yyyyMMddHHmmssSSS)) 给出错误: java.ti
|
参见英文答案 > Is java.time failing to parse fraction-of-second?2 LocalDateTime.parse("20150901023302166",DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS"))
给出错误:
解决方法解决方法是使用DateTimeFormatterBuilder自动构建格式化程序,并为每个字段固定宽度.此代码产生正确的结果.public static void main(String[] args) {
DateTimeFormatter formatter = new DateTimeFormatterBuilder()
.appendValue(ChronoField.YEAR,4)
.appendValue(ChronoField.MONTH_OF_YEAR,2)
.appendValue(ChronoField.DAY_OF_MONTH,2)
.appendValue(ChronoField.HOUR_OF_DAY,2)
.appendValue(ChronoField.MINUTE_OF_HOUR,2)
.appendValue(ChronoField.SECOND_OF_MINUTE,2)
.appendValue(ChronoField.MILLI_OF_SECOND,3)
.toFormatter();
System.out.println(LocalDateTime.parse("20150901023302166",formatter));
}
所以看起来格式化程序在从模式构建时有问题.在搜索OpenJDK JIRA之后,似乎这是一个错误,正如JDK-8031085中所提到的,计划在JDK 9中修复. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – 不能从ActionProvider转换为ShareActionProvider
- java – ThreadLocal是否优于HttpServletRequest.setAttrib
- 这在Java中 – 线程“main”java.lang.StackOverflowError中
- 浅析Java8新特性Lambda表达式和函数式接口
- java – 气馁的方法,不推荐使用
- java – 来自支持v.23.2.0的RecyclerView的dissapearence动
- 冒泡排序算法java实现
- JavaWeb实现同一帐号同一时间只能一个地点登陆(类似QQ登录
- Java开源简单实用的Http工具类
- java – Apache Camel.节流部分路线
