String to LocalDate
Jak mogę przekonwertować łańcuch znaków na LocalDate
?
Widziałem przykłady takie jak:
LocalDate dt = new LocalDate("2005-11-12");
Ale moje struny są takie:
2005-nov-12
4 answers
Jak używasz czasu Joda, powinieneś użyć DateTimeFormatter
:
final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MMM-dd");
final LocalDate dt = dtf.parseLocalDate(yourinput);
Jeśli używasz Javy 8 lub nowszej, zapoznaj się z odpowiedzią
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-14 12:28:16
Java.czas
Od wersji Java 1.8 można to osiągnąć bez dodatkowej biblioteki, używając java.czas klasy. Zobacz Tutorial .
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MMM-dd");
formatter = formatter.withLocale( putAppropriateLocaleHere ); // Locale specifies human language for translating, and cultural norms for lowercase/uppercase and abbreviations and such. Example: Locale.US or Locale.CANADA_FRENCH
LocalDate date = LocalDate.parse("2005-nov-12", formatter);
Składnia jest prawie taka sama.Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-04-10 05:29:11
Być może będziesz musiał przejść z DateTime do LocalDate.
DateTimeFormatter FORMATTER = DateTimeFormat.forPattern("yyyy-MMM-dd");
DateTime dateTime = FORMATTER.parseDateTime("2005-nov-12");
LocalDate localDate = dateTime.toLocalDate();
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-05 16:40:57
Formatowanie Datetime jest wykonywane przez org.joda.time.format.DateTimeFormatter class
. Trzy klasy zapewniają fabryczne metody tworzenia formaterów , i jest to jedna z nich. Pozostałe to ISODateTimeFormat
i DateTimeFormatterBuilder
.
DateTimeFormatter format = DateTimeFormat.forPattern("yyyy-MMM-dd");
LocalDate lDate = new LocalDate().parse("2005-nov-12",format);
final org.joda.time.LocalDate class
jest niezmienną klasą datetime reprezentującą datę bez strefy czasowej . LocalDate
jestwątek bezpieczny i niezmienny , pod warunkiem, żeChronologia jest również. Wszystkie dostarczane standardowe klasy chronologii są bezpieczne i niezmienne.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-05 17:12:01