Я ищу библиотеку Java, которая может анализировать строку в POJO без указания формата. Я изучил POjava. Есть ли другая библиотека, которая делает что-то подобное?
DateTime dateTime = DateTimeParser.parse("21/02/13");
//If unclear use the cultural information passed
DateTime dateTime = DateTimeParser.parse("01/02/13", new Locale("en-us"));
//Should also work with time zones
DateTime dateTime = DateTimeParser.parse("2011/12/13T14:15:16+01:00");
Я нашел следующие ссылки с той же проблемой Интеллектуальный анализатор даты/времени для Java , но не очень полезные ответы. Ни Joda, ни JChronic не делают того, что я хотел. Поправьте меня, если я ошибаюсь.
Обновлять:
Причина, по которой я говорю, что Joda не решает мою задачу, заключается в том, что Joda ожидает, что строка будет проанализирована в формате ISO8601 или в любом формате, который вы укажете, например «yyyyMMdd». Я не смогу жестко закодировать этот формат, так как мне нужно обрабатывать несколько форматов.
У меня есть решение для устранения двусмысленности в отношении американских или европейских форматов даты, то есть мм/дд/гг или дд/мм/гг. Предполагая, что у меня есть доступ к часовому поясу даты, могу ли я определить, является ли это американским или европейским форматом? Может ли кто-нибудь сказать мне, как это сделать? Гуглил, но ничего не нашел.
06/05/2013
? Что бы вы ни выбрали, вы ошибетесь на значительную часть планеты. - person Jon Skeet   schedule 21.02.2013