Sie können Tag, Monat und Jahr mit SimpleDateFormat getrennt abrufen

7

Ich habe ein SimleDateFormat wie dieses

%Vor%

Ich gebe Datum mit dem Format wie "Jan,23,2014" .

Nun möchte ich Tag, Monat und Jahr getrennt bekommen. Wie kann ich das umsetzen?

    
John Error 10.04.2014, 13:43
quelle

8 Antworten

12

Wenn Sie die Werte getrennt abrufen müssen, verwenden Sie mehr als ein SimpleDateFormat .

%Vor%

usw.

    
Duncan Jones 10.04.2014, 13:55
quelle
11
%Vor%     
Udo Klimaschewski 10.04.2014 14:00
quelle
6

Wow, SimpleDateFormat für den Erhalt von Stringteilen? Es kann viel einfacher gelöst werden, wenn Ihre Eingabezeile wie folgt lautet: "Jan, 23,2014":

%Vor%

Ausgabe:

%Vor%

Wenn Sie jedoch aus irgendeinem Grund SimpleDateFormat verwenden möchten, lautet die Lösung wie folgt:

%Vor%

Ausgabe:

%Vor%     
nikis 10.04.2014 14:00
quelle
4

Die akzeptierte Antwort hier schlägt vor, mehr als ein SimpleDateFormat zu verwenden, aber es ist möglich, dies mit einer SimpleDateFormat -Instanz zu tun und applyPattern aufzurufen.

Hinweis: Ich glaube, dieser Beitrag wäre auch hilfreich für diejenigen, die genau wie ich nach setPattern () suchen.

%Vor%     
user6077173 19.08.2016 00:14
quelle
1

Verwenden Sie dies, um "Jan, 23,2014" zu parsen.

%Vor%

Dann können Sie einen beliebigen Teil des Datums bekommen.

    
John Ding 10.04.2014 13:51
quelle
1

Akzeptieren Sie das?

%Vor%

Anzeige als Dec 25,1988 12:00

UPDATE: basiert auf Kommentar

%Vor%

HINWEIS: Date.parse () ist @deprecated und gemäß API wird empfohlen, DateFormat.parse

zu verwenden     
Mani 10.04.2014 13:48
quelle
1

java.time

Die anderen Antworten verwenden überholte Klassen. Die Klassen java.time ersetzen diese lästigen alten Klassen.

LocalDate

Die Klasse LocalDate repräsentiert einen Datumswert ohne Uhrzeit und ohne Zeitzone.

%Vor%

Fragen Sie nach den gewünschten Teilen ab.

%Vor%

Über java.time

Das Framework java.time ist in Java integriert 8 und später. Diese Klassen ersetzen die alten problematischen Datum-Zeit-Klassen wie java.util.Date , .Calendar , & amp; %Code%.

Das Joda-Time Projekt, jetzt in Wartungsmodus , rät zur Migration auf java.time.

Weitere Informationen finden Sie im Oracle-Lernprogramm . Und durchsuchen Sie Stack Overflow nach vielen Beispielen und Erklärungen.

Ein Großteil der java.time-Funktionalität wird auf Java 6 & amp; 7 in ThreeTen-Backport und weiter angepasst an Android in ThreeTenABP (siehe So verwenden Sie ... ).

Das Projekt ThreeTen-Extra erweitert java.time um zusätzliche Klassen. Dieses Projekt ist ein Testfeld für mögliche zukünftige Erweiterungen von java.time. Sie können hier einige nützliche Klassen wie java.text.SimpleDateFormat , Interval , YearWeek und mehr finden.

    
Basil Bourque 19.08.2016 19:53
quelle
0
%Vor%     
Thanh Thinh 10.04.2014 14:16
quelle