Date für DatePicker formatieren aber wie?

Thallius

Top Contributor
Hi,

ich hänge hier gerade an etwas fest das trvial erscheint mir fällt aber einfach kein eLösung ein.

Ich habe einen JDatePicker. Dieser hat einen Formatter für das Textfeld.

Code:
public class DateLabelFormatter extends AbstractFormatter 
{
        privatestaticfinallongserialVersionUID = 1L;
        private SimpleDateFormat dateFormatter = new SimpleDateFormat("dd.MM.yyyy");

        public Object stringToValue(String text) throws ParseException 
        {
            return dateFormatter.parseObject(text);
        }

        public String valueToString(Object value) throws ParseException 
        {
            if (value != null) 
            {
                Calendar cal = (Calendar) value;
                return dateFormatter.format(cal.getTime());
            }
            return "";
        }
}

Soweit alles schön. Das geht aber natürlich nur, wenn die Software von einem Deutschen benutzt wird. Ich möchte nun, dass das Datum immer in dem landesspezifischen Format angezeigt wird. Also für die Engländer z.B. MM/dd/yyyy. Ok ich kann jetzt den Fomatter umschreiben in

Code:
        private SimpleDateFormat dateFormatter = new SimpleDateFormat("", Locale.getDeaultLocale());

Dann habe ich zwar die richtige Ausgabe aber dummerweise wird immer die Zeit mit "00:00" dahinter angehängt was ich ja auch nicht will.

Wie kann ich dem Formatter sagen, dass ich gerne das locale Datum hätte aber ohne Zeit ?

Gruß

Claus
 

X5-599

Top Contributor
Wie wäre es so?

Code:
Date today = new Date();
DateFormat format;

format = DateFormat.getDateInstance(DateFormat.SHORT, Locale.UK);
System.out.println(format.format(today));

format = DateFormat.getDateInstance(DateFormat.SHORT);
System.out.println(format.format(today));

26/04/16
26.04.16

Allerdings: Im SHORT Style hat man offenbar leider nur 2 Jahreszeichen, nicht vier.
 

stg

Top Contributor
...aber es gibt ja auch noch DEFAULT, MEDIUM usw :)

Und wenn einem die bereitgestellten Formate nicht reichen, dann muss man sich halt überlegen welche Sprachen man alle unterstützen will und z.B. eine Factory Methode schreiben, die einem das passende Pattern bzw den passenden Formatter zurückgibt.
 

Thallius

Top Contributor
Das ist aber extrem beschissen gelöst. Ich schreibe meine Programme immer so, dass sie in ALLEN Sprachen laufen kann. Man braucht bloss die Sprachdatei überstezen und gut ist. Dann muss ich in die Sprachdatei ein Datumpattern einbauen. Sehr unschön für die Übersetzer, die sich in der Regel nicht mit programmierung auskennen und somit damit nicht viel anfangen können.
 

X5-599

Top Contributor
Wenn der SHORT Style annehmbar ist, würde ich's wohl so machen wie in meinem zweiten Code Beispiel.
Code:
format = DateFormat.getDateInstance(DateFormat.SHORT);
System.out.println(format.format(today));
 

X5-599

Top Contributor
@Thallius Das verstehe ich übrigens auch nicht. Wenn man
Code:
SimpleDateFormat s = new SimpleDateFormat("", Locale.getDefault());
System.out.println(s.format(today));

Wird einfach gar nichts ausgegeben. Und du bekommst da einen der Locale entsprechend formattierten Datumsstring mit Zeitangabe?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F GMT für Date Objekte festlegen Java Basics - Anfänger-Themen 5
L int TimeZone für Date Java Basics - Anfänger-Themen 3
G Date Objekt für aktuelles Datum erzeugen Java Basics - Anfänger-Themen 9
Beowend String zu Date parsen Java Basics - Anfänger-Themen 1
MiMa Date vs LocalDate/LocalDateTime Java Basics - Anfänger-Themen 13
I Ical4j / Kalender einlesen von URL - Fehler: "Unparseable date" Java Basics - Anfänger-Themen 16
M Umgang mit dem Type "Date" Java Basics - Anfänger-Themen 6
sserio Date Library Frage Java Basics - Anfänger-Themen 9
P "Datestamp" to Date oder Timestamp Java Basics - Anfänger-Themen 15
B Date - Vergleich (equals / after) ? Java Basics - Anfänger-Themen 3
G convert Date to LocalDate Java Basics - Anfänger-Themen 11
G convert Optional<Date> into Optional<LocalDate> Java Basics - Anfänger-Themen 6
J Methoden toString()-Date Formatter Java Basics - Anfänger-Themen 8
L Java Date Format ändern Java Basics - Anfänger-Themen 5
B java.util.Date noch zeitgemäß? Java Basics - Anfänger-Themen 6
B java.util.Date berechnen Java Basics - Anfänger-Themen 11
B Date - Umwandlung OffsetDateTime Java Basics - Anfänger-Themen 11
B Date Konvertierung Java Basics - Anfänger-Themen 0
B Date formatieren Java Basics - Anfänger-Themen 13
L Datentypen Date API - diese Woche bestimmen Java Basics - Anfänger-Themen 1
D Unterschied Date - Calendar Java Basics - Anfänger-Themen 1
A Vererbungshierachie und java.util.Date Java Basics - Anfänger-Themen 31
agent47 Java 8 Locale Date Time Java Basics - Anfänger-Themen 2
S String zu Date Java Basics - Anfänger-Themen 6
L Java String to date? Java Basics - Anfänger-Themen 2
H Repräsentation von DateTime (Joda) in Java Util Date überführen Java Basics - Anfänger-Themen 3
I Date zu 01.01.<year> setzen Java Basics - Anfänger-Themen 1
H java date-time parser Java Basics - Anfänger-Themen 1
S Date parsen klappt nicht richtig Java Basics - Anfänger-Themen 3
A String to Date parsing Java Basics - Anfänger-Themen 2
M TimeUnit ms nach date convertieren Java Basics - Anfänger-Themen 2
B Date Object mit Millisekunden Ausgabe Java Basics - Anfänger-Themen 8
K Best Practice Date in einem Konstruktor angeben Java Basics - Anfänger-Themen 5
K Datum und Uhrzeit als Date Objekt Java Basics - Anfänger-Themen 10
K Date cannot be cast to java.lang.Integer Java Basics - Anfänger-Themen 4
N Change date Format Java Basics - Anfänger-Themen 2
P Date oder Kalender? Was soll man verwenden? Java Basics - Anfänger-Themen 2
M Simple Date Format Java Basics - Anfänger-Themen 2
S Erste Schritte Berechnung mit Daten aus CSV und Date Objekt Java Basics - Anfänger-Themen 2
D Java Date/Calendar Problem Java Basics - Anfänger-Themen 4
Kenan89 Java Date List Java Basics - Anfänger-Themen 4
L Date differenz Java Basics - Anfänger-Themen 6
algebraiker TreeMap<Date,Object> navigieren? Java Basics - Anfänger-Themen 24
B Datentypen Date Java Basics - Anfänger-Themen 11
K konvertiere Millisekunden in ein Utc Date Objekt Java Basics - Anfänger-Themen 5
G Date - Calender | "Vergleich" Java Basics - Anfänger-Themen 3
M Mal wieder Probleme mit Date Java Basics - Anfänger-Themen 9
A Datentypen Datum mit "May" zu Date parsen Java Basics - Anfänger-Themen 6
Blindxantos Datentypen Probleme bei util.Date zu sql.Date Java Basics - Anfänger-Themen 5
R Tage subtrahieren von einem Date() Java Basics - Anfänger-Themen 6
I Date um 1 Jahr erhöhen? Java Basics - Anfänger-Themen 17
F Sekunden abschneiden bei Date Java Basics - Anfänger-Themen 4
N alter mit Date ausrechnen Java Basics - Anfänger-Themen 10
turmaline String zu Date konvertieren -> Unparseable date Java Basics - Anfänger-Themen 5
T java.util.Date Java Basics - Anfänger-Themen 5
C Date() ->das Datum von gestern ausgeben Java Basics - Anfänger-Themen 11
M Datentypen Wie initialisiere ich ein Objekt vom Typ Date? Java Basics - Anfänger-Themen 3
H OOP java.sql.Date does not have a no-arg default constructor Java Basics - Anfänger-Themen 2
L Date subtrahieren? Java Basics - Anfänger-Themen 10
G Date von heute mit Uhrzeit erzeugen Java Basics - Anfänger-Themen 9
H Unterschied zwischen 2 Date in Sekunden am einfachsten? Java Basics - Anfänger-Themen 5
I Null - Wert bei Date (Mysql) Java Basics - Anfänger-Themen 2
H Date-Objekt um einen Monat "erhöhen" Java Basics - Anfänger-Themen 7
A The method getYear() from the type Date is deprecated Java Basics - Anfänger-Themen 6
P Datum: String in Date umwandeln Java Basics - Anfänger-Themen 7
T mit Typen Date rechnen Java Basics - Anfänger-Themen 6
F java.sql.Date Differenz Java Basics - Anfänger-Themen 3
P Date geht auf UNIX 1 Stunde nach Java Basics - Anfänger-Themen 14
M Date-Problem Java Basics - Anfänger-Themen 3
H Einfaches Date-parse problem Java Basics - Anfänger-Themen 2
Developer_X Date Java Basics - Anfänger-Themen 4
Antoras Daten aus Date lesen Java Basics - Anfänger-Themen 3
G String in Date konvertieren Java Basics - Anfänger-Themen 6
W 2 Date()-Daten vergleichen Java Basics - Anfänger-Themen 6
W String in Date Java Basics - Anfänger-Themen 4
G SpinnerDateModel stard & end nur Date? Java Basics - Anfänger-Themen 4
H Date-Object "um eins erhöhen! Java Basics - Anfänger-Themen 4
G Anfänger: Problem mit Date Java Basics - Anfänger-Themen 3
S NullPointerException bei Date.setTime() Java Basics - Anfänger-Themen 3
M 2 Date()-Datum´s vergleichen Java Basics - Anfänger-Themen 9
C Java 7 Date Java Basics - Anfänger-Themen 9
L Timer und Date Java Basics - Anfänger-Themen 2
G SQL Date zu JAVA Date Java Basics - Anfänger-Themen 4
G String in Date casten. Java Basics - Anfänger-Themen 7
G String in Date casten Java Basics - Anfänger-Themen 4
G java.text.parseException: Unparseable Date Java Basics - Anfänger-Themen 7
U java.util.Date to java.sql.Date Java Basics - Anfänger-Themen 2
B JSpinner/Date auslesen Java Basics - Anfänger-Themen 3
S Datum umwandeln: String in Date umwandeln Java Basics - Anfänger-Themen 4
F date und time berechnungen Java Basics - Anfänger-Themen 2
G Formatieren von Date-Objekten Java Basics - Anfänger-Themen 5
J Date-Objekt formatiert als String ausgeben Java Basics - Anfänger-Themen 2
G Objekte vom Typ Date vergleichen Java Basics - Anfänger-Themen 2
P JAVA in Exe Date ausführen Java Basics - Anfänger-Themen 7
B string 2 sql.date() Java Basics - Anfänger-Themen 8
G date in sekunden umwandeln und wieder zurück. Java Basics - Anfänger-Themen 6
A einlesen von date und boolean Java Basics - Anfänger-Themen 3
G String in java.sql.Date umwandeln Java Basics - Anfänger-Themen 4
W Java.mysql.date in GregorianCalender konvertieren Java Basics - Anfänger-Themen 2
W Aus Textfeld ein "MySQL Date" auslesen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben