如何从没有格式的字符串中获取日期?

问题描述

我有一个

String s = "2020-02-22"`;

并且我想将其更改为 Date,以便我可以将其存储在我的数据库中,该数据库有一列不接受除 Date 之外的任何内容

我尝试使用 LocalDate 类,但它在 API 26 中。 任何帮助将不胜感激。

解决方法

假设您从数据库中获取日期并将其传递给以下方法:

public String formatDate(Date date){
    SimpleDateFormat ff = new SimpleDateFormat("yyyy-MM-dd");           
    return ff.format(date);
}

编辑:根据来自 Basil 的输入,您可以尝试使用 Android Desugaring 来利用 Java 8+ 功能,而无需最低 API 级别。这将允许使用 LocalDate 而不是旧的 java.util.Date 类。 使用 LocalDate 您可以将字符串解析为:

public LocalDate getDate(String dateString) {
    return LocalDate.parse(dateString);
}