Joda-Time
Die Joda-Time Bibliothek bietet eine LocalDate
um einen reinen Datumswert ohne Tageszeit und Zeitzone darzustellen.
Zeitzone
Die Bestimmung eines Datums erfordert eine Zeitzone . Ein Zeitpunkt kurz nach Mitternacht in Paris bedeutet ein Datum, das dem gleichen Zeitpunkt in Montréal einen Tag voraus ist. Wenn Sie es versäumen, eine Zeitzone anzugeben, wird die aktuelle Standardzeitzone der JVM verwendet - wahrscheinlich nicht das, was Sie wollen, da die Ergebnisse variieren können.
Beispiel Code
long millisecondsSinceUnixEpoch = ( yourNumberOfSecondsSinceUnixEpoch * 1000 ); // Convert seconds to milliseconds.
DateTimeZone timeZone = DateTimeZone.forID( "America/Montreal" );
LocalDate localDate = new LocalDate( millisecondsSinceUnixEpoch, timeZone );
String output = localDate.toString(); // Defaults to ISO 8601 standard format, YYYY-MM-DD.
Vorheriger Tag
Wie in einem Kommentar gewünscht, am Vortag zu erhalten.
LocalDate dayBefore = localDate.minusDays( 1 );
Umrechnen in j.u.Date
Die Klassen java.util.Date & .Calendar sollte vermieden werden da sie notorisch lästig sind. Aber bei Bedarf können Sie umsteigen.
java.util.Date date = localDate.toDate(); // Time-of-day set to earliest valid for that date.