Wie Daten in Java auf Format

Java ist eine vielseitige Programmiersprache. Wenn Sie die bespannen() Verfahren zur Umwandlung einer LOCALDATE in einen String, erhalten Sie eine Zeichenfolge wie 2014.10.31. Was ist, wenn Sie das Datum in einem anderen Format angezeigt werden soll, wie zum Beispiel 2014.10.31 oder 31 Oktober 2014?

Um das zu erreichen, können Sie mit dem Format Verfahren der LOCALDATE Klasse zusammen mit einem benutzerdefinierten Formatierer erstellen verwenden Sie die DateTimeFormatter Klasse. So legen Sie das Format, das Sie verwenden möchten, geben Sie die DateTimeFormatter Klasse ein Musterkette, die Formatierungssymbole in Tabelle 5-4 verwenden.

Format MusterErläuterung
yJahr (zwei oder vier Ziffern)
MMonat (ein oder zwei Ziffern oder drei oder mehr Buchstaben)
dTag des Monats (wie 1, 28)
HStunde
mMinute
sZweite (0-bis 59)
hClock Stunde (1 bis 12)
einVormittags oder nachmittags
VZeitzonen-ID (wie America / Los_Angeles)
zName der Zeitzone (wie zB Pacific DaylightTime)

Der einfachste Weg, eine zu schaffen DateTimeFormatter Ziel ist, die statisch zu verwenden ofPattern Verfahren zusammen mit einer Musterkette. Beispielsweise:

DateTimeFormatter Formatierergehäuses Formatter = DateTimeFormatter.ofPattern ( "dd MMM YYYY") -

Diese Formatierer erzeugt Daten formatiert wie 04 SEP 2014. Sie können dann die Formatierer verwenden, um eine formatierte zu produzieren Datum Zeichenfolge wie folgt:

LOCALDATE date = LocalDate.now () - String formattedDate = date.format (Formatierer) -

Hier ist ein einfaches Programm, das aktuelle Datum in verschiedenen Formaten gedruckt:

import java.util. * - Import java.time. * -. Import java.time.format * - public class Format {public static void main (String [] args) {Local now = LocalDateTime.now () - Druckdatum (jetzt "YYYY-MM-dd") - Druckdatum (jetzt "MM-dD-YYYY") - Druckdatum (jetzt "dd MMM YYYY") - Druckdatum (jetzt: "MMMM d, YYYY") - Druckdatum (heute, "HH: mm") - Druckdatum (jetzt "h: mm a") -} public static void Druckdatum (Datum Local, String-Muster) {DateTimeFormatter ff = DateTimeFormatter.ofPattern (Muster) -Muster = (Muster + "") .substring (0, 14) -System.out.println (Muster + "" + date.format (f)) -}}

Wenn Sie dieses Programm ausführen, werden Sie Konsolenausgabe erhalten, dies entspricht:

YYYY-MM-dd 2013-10-09MM-TT-JJJJ 10-09-2013dd MMM YYYY 9. Oktober 2013MMMM d, YYYY 9. Oktober 2013HH: mm 20: 29h: mm a 8.29

Haben Sie die kühle Formatierung Trick? Sie können die Kraft System.out.println () Muster 14 Zeichen lange Strings zu drucken, so dass alle Termine Die Polsterung dieses Slick Codezeile erreicht wird, in einer Reihe aufstellen würde:

pattern = (Muster + "") .substring (0, 14) -

Hier ist eine Reihe von 14 Räumen wird die zugegebene Muster string, dann ein 14-Zeichen lange Teilkette wird mit dem ersten Zeichen genommen zu starten. Der nette Abstand in der Ausgabe macht es einfacher für Sie, um die Wirkung jedes der Musterzeichenfolgen zu sehen.

Menü