在java 8中,DateTimeFormatter无法在秒后解析带有小数0的日期

Sum*_*ppi 2 java datetime-format java-8

我正在使用java 8.我试图用DateTimeFormatter解析日期到字符串.但它给出了以下错误.我的尝试和错误如下.谁能帮帮我吗?

我的代码>>

String getFormatedDateForList(String dateObj) {
    // dateObj = "2019-02-06 00:00:00.0"
    DateTimeFormatter inputFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    DateTimeFormatter outputFormat = DateTimeFormatter.ofPattern("dd/MM/yyyy");
    String output = LocalDate.parse(dateObj, inputFormat).format(outputFormat)
    return output
}
Run Code Online (Sandbox Code Playgroud)

错误>>

Text '2019-02-06 00:00:00.0' could not be parsed, unparsed text found at index 19. Stacktrace follows: Message: Text '2019-02-06 00:00:00.0' could not be parsed, unparsed text found at index 19

dav*_*ave 5

您的输入格式设置模式yyyy-MM-dd HH:mm:ss指定前19个字符,而您的输入dateObj包含多个字符.因此,解析器从第20个字符(索引19)开始查找未解析的文本.

假设您有十分之一秒dateObj,则需要在格式化模式中指定.基于API,我认为你想要:

yyyy-MM-dd HH:mm:ss.S
Run Code Online (Sandbox Code Playgroud)