DateTimeFormatter 无法解析 Java 8 中秒后带小数点 0 的日期

DateTimeFormatter can not parse date with decimal 0 after second in 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
}

错误:

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

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

鉴于 dateObj 中有十分之一秒,您需要在格式化模式中指定它。基于API,我想你想要:

yyyy-MM-dd HH:mm:ss.S