将字符串"yyyy-MM-dd"转换为LocalDateTime
将字符串"yyyy-MM-dd"转换为LocalDateTime
有没有办法将一个日期字符串转换为格式为"yyyy-MM-dd"的LocalDateTime?
如果我尝试这样做:
DateTimeFormatter DATEFORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDateTime ldt = LocalDateTime.parse(string, DATEFORMATTER);
我得到以下异常:
java.time.format.DateTimeParseException: 无法解析文本'2017-03-13':无法从TemporalAccessor中获取LocalDateTime:{},ISO解析为2017-03-13,类型为java.time.format.Parsed
在java.time.format.DateTimeFormatter.createError(DateTimeFormatter.java:1920)
在java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1855)
在java.time.LocalDateTime.parse(LocalDateTime.java:492)
在hu.npsh.workforce.utils.Util.stringToLocalDateTime(Util.java:284)
在hu.npsh.workforce.utils.util.StringLocalDateTimeConversionTest.stringToLocalDateTimeTest(StringLocalDateTimeConversionTest.java:35)
...
我知道主要问题是模式不包含小时和分钟...
但是如果我想创建一个方法,该方法接收一个字符串和一个DateTimeFormatter,并返回一个LocalDateTime,该怎么办呢?
有没有一个正确、好的解决方案?
编辑:
我的目标是创建一个方法,该方法接收一个字符串和一个DateTimeFormatter,并返回一个LocalDateTime。
模式可以是任何有效的格式。