У меня ниже этого методаобработки даты в Java самого различного формата
, в котором внутри параметра stringValue в можно получить дату в типе данных строки, как
06/20/13
или я могу Получать дату,
16/02/2018
поэтому я должен быть в состоянии разобрать его и отправить его в Date типа обряд теперь от кода ниже я нахожусь в состоянии достигнуть его, но проблемы в том, что мой год часть вычитается так после отладки я обнаружил, что приходит в
[Date: year: 13 month : 7 day:5 ] for date type 06/20/13
теперь я хочу год вперед, как
[Date: year: 2013 month : 7 day:5 ]
он подходит правильно для 16/02/2018 это одно, пожалуйста, посоветуйте, как должен ли я исправить его для формата выше, чтобы он работал на обе даты.
public static Date convertStringToDate(String stringValue) {
Date iceDate = null;
java.util.Date javaDate = new java.util.Date();
String[] formatStrings = { "dd/MM/yyyy", "dd-MMM-yyyy" };
// DateFormat format = new SimpleDateFormat("dd/MM/yyyy",
// Locale.ENGLISH);
for (String formatString : formatStrings) {
try {
javaDate = new SimpleDateFormat(formatString)
.parse(stringValue);
iceDate = new Date(javaDate);
return iceDate;
} catch (ParseException e) {
logger.warn("##$$$$$### Error in invoice inside convertStringToDate method : ##$$$$$$#### "
+ ErrorUtility.getStackTraceForException(e));
}
}
return null;
}
Формат даты в формате ДД/ММ/ГГ, и я использую Java 5. Пожалуйста посоветуйте
«так что я должен быть в состоянии разобрать его и отправить его типа Дата обряду» - нет, если вы не Не знаю формат, нет. Есть ли «05/06/2015» - 6 или 5 июня? –
@JonSkeet представляет 5 дней и 6 месяцев, что составляет июнь и год 2015. –
Откуда вы знаете, что он представляет 5-й и 6-й месяцы, а не 6-й и 5-й? Имейте в виду, что вы заявляете, что «06/20/13» - действительный ввод, который помещает второй день. Это моя точка зрения - у вас есть неоднозначный набор форматов даты, после чего игра закончилась. –