Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在不设置格式的情况下从字符串中获取日期?_Java_Android_Date_Date Parsing_Java.util.date - Fatal编程技术网

Java 如何在不设置格式的情况下从字符串中获取日期?

Java 如何在不设置格式的情况下从字符串中获取日期?,java,android,date,date-parsing,java.util.date,Java,Android,Date,Date Parsing,Java.util.date,我有一个 String s = "2020-02-22"`; 我想把它改成Date,这样我就可以把它存储在我的数据库中,它有一个列,除了Date,它什么都不接受 我尝试使用LocalDate类,但它在API26中。 任何帮助都将不胜感激。假设您从数据库中获取日期并将其传递给以下方法: 公共字符串格式日期(日期){ SimpleDataFormat ff=新的SimpleDataFormat(“yyyy-MM-dd”); 返回ff.格式(日期); } 编辑:根据来自的输入,

我有一个

String s = "2020-02-22"`;
我想把它改成
Date
,这样我就可以把它存储在我的数据库中,它有一个列,除了
Date
,它什么都不接受

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

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

公共字符串格式日期(日期){
SimpleDataFormat ff=新的SimpleDataFormat(“yyyy-MM-dd”);
返回ff.格式(日期);
}
编辑:根据来自的输入,您可以尝试使用Java 8+功能,而无需最低API级别。这将允许使用
LocalDate
而不是旧的
java.util.Date
类。 使用
LocalDate
可以将截止日期的字符串解析为:

public LocalDate getDate(String dateString){
返回LocalDate.parse(日期字符串);
}

你试过java.util.Date吗?@GauthamM是的,我试过simpleDateFormat,但它是格式化的日期,但我希望我的日期和字符串一样,你是说你希望数据库中的日期也以
yyyy-MM-dd
格式存储吗?@GauthamM否,我希望它像字符串“2020-02-22”一样存储
myPreparedStatement.setObject(…,LocalDate.parse(“2020-02-22”)仅供参考:这些可怕的类在几年前被JSR310中定义的现代java.time类所取代。建议在2021年使用这些遗留类是一个糟糕的建议。@BasilBourque是的,但从问题来看,似乎正在使用旧版本。最新的Android工具通过“API desugaring”将大部分java.time功能带到旧版本的Android上。@BasilBourque根据评论更新了答案