Проанализировать дату, предложив пользователю формат даты?
Мое приложение читает CSV-файл, предоставленный пользователем. Этот CSV-файл содержит поле для даты и / или времени, отформатированное любым способом, выбранным пользователем. Как: 1999/10/28 или 2000-01-01,3PM-02-59
Я хочу предложить пользователю возможность указать форматирование даты и времени в этом поле. Таким образом, у меня будет окно ввода: "Укажите форматирование поля даты / времени". "Пример: для формата 1999/10/28, введите гггг / мм / дд" "Другой пример: для 2000-01-01,3PM-02-59, ввод "гггг-дд-мм, чч-мм-сс"
Я бы извлек их входные данные в виде строки, затем выполнил бы некоторую сложную и раздражающую операцию для получения регулярного выражения из этой строки, которое затем применил бы в синтаксическом анализаторе csv для определения лет, месяцев, дней, часов и т. Д. В "дате". и время "поле.
Мой вопрос, прежде чем приступить к этому: есть ли библиотека, которая уже занимается такими вещами? Я изобретаю колесо? Есть ли гораздо более очевидный подход, который я пропускаю?
Большое спасибо!
PS: да, это все о пользователях, предоставляющих свои странные форматы даты и времени. Не нужно предполагать, что это будет проще с единообразным форматом!:-)
2 ответа
В Joda Time вы можете использовать несколько анализаторов, вы можете проверить этот ответ SO Используя API даты и времени Joda для анализа нескольких форматов
Вы можете взглянуть на
http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html