字符串数据位于之前以“Mon Jan 08 18:55:57 GMT+05:30 2024”格式存储的文件中。我使用以下代码来转换字符串以获取值“08 Jan 2024”
Boolean goahead = false;
SimpleDateFormat formatter = new SimpleDateFormat("EEE MMM dd HH:mm:ss Z yyyy");
SimpleDateFormat formatterOut = new SimpleDateFormat("dd MMM yyyy");
try {
pundate = formatter.parse(punchDate);
System.out.println(pundate);
System.out.println(formatterOut.format(pundate));
} catch (ParseException e) {
e.printStackTrace();
}
String convertedtodaydate = dateFormater(String.valueOf(LocalDateTime.now()), "dd MMM yyyy", "yyyy-MM-dd"); //Output is 16 Feb 2024
try {
if(Objects.requireNonNull(sdf.parse(convertedtodaydate)).after(sdf.parse(formatterOut.format(pundate)))) {
goahead = true;
}
} catch (ParseException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
我得到的错误是
W/System.err: java.text.ParseException: Unparseable date: "16 Feb 2024"
Run Code Online (Sandbox Code Playgroud)
有没有更简单的方法来检查存储的日期是否早于当前日期?