У меня есть список форматов даты, который содержит только date and month
или month and year
или date and year
, но не полные даты доступны, так как для разбора этих форматов
Я использую следующий метод для разбора даты, нона некоторых устройствах получается Unable to parce date exception
так
как мы можем выяснить, чего не хватает в дате? , поэтому, соответственно, мы можем иметь дело.
Например. Воскресенье, 18 февраля Я хочу обработать эту дату.
Следующий код отлично работает для допустимых форматов даты.
List<String> dateFormats = new ArrayList<>();
dateFormats.add("dd-MM");
dateFormats.add("d-MM");
dateFormats.add("MM yyyy");
dateFormats.add("EEEE, dd'th' MMMM");
for (int i = 0; i < dateFormats.size(); i++) {
try {
SimpleDateFormat d = new SimpleDateFormat(dateFormats.get(i), Locale.ENGLISH);
d.setLenient(false);
diff = new Date().getTime() - d.parse(value).getTime();
break;
} catch (Exception e) {
if (i == dateFormats.size() - 1)
e.printStackTrace();
diff = 0;
}
}