Мне нужно проанализировать String to Date на Java. Проблемный сценарий - это когда используется полный шаблон даты, и он зависит от конкретной локали (которой я не знаю ранее)
Например, используя шаблон "EEEE dd MMMM yyyy", два возможных входа:
Английский = "Пятница 10 ноября 2014 года"
Испанский = "Viernes 10 Noviembre 2014"
Можно ли преобразовать приведенные выше входы в объект Date, не зная языковой стандарт источника?
Благодарю.
Я пробую решение MadProgrammer, и он работает:
String dateInString = "Friday 10 November 2014";
//String dateInString = "Viernes 10 Noviembre 2014";
Locale localeList[] = DateFormat.getAvailableLocales();
Date date = null;
for (Locale l : localeList) {
try {
SimpleDateFormat formatter = new SimpleDateFormat("EEEE dd MMMM yyyy", l);
date = formatter.parse(dateInString);
System.out.println("Trying with locale: " + l.toString());
break;
} catch (ParseException e) {
}
}
благодаря
SimpleDateFormat
.SimpleDateFormat
для каждойLocale
вы, вероятно, столкнетесь, и тогда вам просто нужно будет пройтись по ним, пока одна из них не заработает ...