У меня есть строка формы "mm/yyyy", и я хочу сравнить ее с датой локальной системы.
Я подумал о том, чтобы использовать таблицу преобразования между моим месяцем и полем MONTH в календаре, например:
Calendar cal = Calendar.getInstance();
String date = "07/2014";
String month = date.subString(0, 2);
int monthToCompare;
if (month.equals("01"))
monthToCompare = cal.JANUARY;
if (month.equals("02"))
monthToCompare = cal.FEBRUARY;
...
И затем сравнивая вручную с if. Мне это не нравится, потому что я считаю слишком длинным для такой простой операции.
Другим вариантом, о котором я думал, является получение текущего Date()
и использование метода before()
. Это означало бы перевод моей даты в формат даты, но простые способы сделать это устарели, я должен указать количество миллисекунд, и я не знаю, как легко это сделать (учитывая високосные годы, исправления календаря и т.д. с 1970 г.).