Используйте LD_PRELOAD: выложите свою библиотеку где-нибудь из каталогов man lib и запустите:
LD_PRELOAD='mylibc.so anotherlib.so' program
Смотрите: статья Википедии
Проверьте Время Joda и его Причудливое Средства форматирования .
, Java 8 включает JSR-310 так, чтобы могло быть решение также.
(Отредактированный для ясности.)
Лично, я думаю строгий, хорошо. Столько различных ситуаций требует различных правил вокруг расслабленного парсинга, невозможно действительно поместить это в общую библиотеку всесторонне.
Однако я был бы полностью рекомендовать Время Joda вместо встроенных классов даты/времени в целом. Их средства форматирования и синтаксические анализаторы ориентированы на многопотоковое исполнение и неизменны, который помогает также. Время Joda имеет некоторую поддержку расслабленного парсинга, как показано в другом ответе, но необходимо ожидать должными быть предоставлять некоторые правила сами.
От 43642 , хотя не обязательно дубликат:
Посмотрите Apache палаты общин DateUtils. Существует parseDate
метод, который берет Ваш String
, и несколько шаблонов для попытки выкладывает Date
экземпляр.
Календарь обычно является способом пойти, но понять, что большая часть управления Датой Java будет обработана с Вашей стороны, если Вы захотите сделанный правильно. Часовой пояс является хорошей вещью изучить, если необходимо управлять international/cross-zone информацией , Время Joda является также аккуратной вещью и является вдохновением позади новых предложенных понятий Даты/Времени, которые будут добавлены к Java в JSR 310.
Hope это полезно.
Я сказал бы JChronic, если Вы ищете что-то, что проанализирует даты от естественного "нечеткого" человеческого входа.
я использовал и JChronic и Хронический (исходная версия Ruby) с большим успехом.
Я должен был бы сказать +1 для JodaTime. В дополнение к парсингу Joda делает примерно каждую связанную с датой операцию лучше.
Проект POJava на SourceForge сделал, чтобы DateTime возразил, что даты синтаксических анализов с нескольких языков (когда месяц определяется как имя) и настраиваются между MM-DD-YYYY и DD-MM-YYYY. Это анализирует даты эвристическим образом, выбирая наиболее вероятный год, месяц, дату, час, минута, во-вторых, и часовой пояс вместо того, чтобы поддерживать предопределенные форматы. Файл банки о 60K в размере.
существует неоднозначность в интерпретации даты как "10-08", в котором это могло быть предназначено как стенография или для "2008-10-08" или для "октябрь 2008". Вы могли добавить год сами при принятии вида стенографии, Вы даете в своем примере.
Proj: POJava Документы: ПРАКТИЧЕСКОЕ РУКОВОДСТВО используют DateTime
Используйте DateFormat... Текущий стандарт до желанной отсрочки Joda.
Я попытался реализовать расширяемый PHP strtotime
на Java в этом ответе