# Date und SimpleDateFormat



## Grejak (30. Sep 2012)

Hallo ich versuche aus einem String der Form :

Thu Sep 27 18:18:28 CEST 2012

ein Date zu lesen und benutze dazu SimpleDateFormat und deren Methode .parse.

Jedoch habe ich ein Problem den im Konstruktor angeforderten String richtig zu schreiben

z.B.

EEE MMM dd HH:mm:sm zzzz yyyy
oder

"E M dd HH:mm:sm z yyyy"

ich weiß nicht wie er richtig zusammengesetzt wird ich kenne nur die Tabelle der Zeichen:
SimpleDateFormat (Java 2 Platform SE v1.4.2)

Hilfe erforderlich!???:L


----------



## Camill (30. Sep 2012)

```
EEE MMM dd HH:mm:ss z yyyy
```
 dürfte passen.


----------



## Grejak (30. Sep 2012)

nee...


```
java.text.ParseException: Unparseable date: "Thu Sep 27 18:18:28 CEST 2012"

	at java.text.DateFormat.parse(DateFormat.java:357)
	at org.io.BasicFileReader.readDateFromString(BasicFileReader.java:60)
	at org.io.BasicFileReader.encode(BasicFileReader.java:35)
	at org.io.BasicFileReader.main(BasicFileReader.java:79)
```


----------



## kaetzacoatl (30. Sep 2012)

zzzz so wie ichs verstanden habe


----------



## Camill (30. Sep 2012)

Übergibst du auch das richtige Locale?
So funktioniert das ganze:

```
DateFormat df = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.US);
try {
	System.out.println(df.parse("Tue Sep 27 18:18:28 CEST 2012"));
} catch (ParseException e) {
	e.printStackTrace();
}
```


----------



## Grejak (30. Sep 2012)

camill danke

Aber kannst du mir vlt erklären warum ich Locale.US nicht Locale.Germany übergeben muss?


----------



## Fant (30. Sep 2012)

Weil z.B. der Dienstag bei uns nicht *TUE*sday heißt 

Der String, den du einliest, ist nunmal ein englisches Datum..



```
DateFormat df1 = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.US);
DateFormat df2 = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.GERMAN);
Date date;
try {
	date = df1.parse("Tue Sep 25 18:18:28 CEST 2012");
	System.out.println(df1.format(date));
	System.out.println(df2.format(date));
} catch (ParseException e) {
    e.printStackTrace();
}
```

Ausgabe:

```
Tue Sep 25 18:18:28 CEST 2012
Di Sep 25 18:18:28 MESZ 2012
```


----------

