# String in java.sql.Date umwandeln



## Guest (21. Aug 2007)

Hallo,

ich bekomme einen String übergeben. Dieses String ist ein Datum vom Format dd.mm.yyyy.

Diesen String möchte ich in ein java.sql.Date umwandeln.

Ist dies möglich?

Wenn ja wie??


Gruß


----------



## Guest (21. Aug 2007)

Habe eine Lösung gefunden.


```
SimpleDateFormat sdf = new SimpleDateFormat("dd.mm.yyyy");
		try {
			sdf.parse(gebdat);
		} catch (ParseException e) {
			// TODO Automatisch erstellter Catch-Block
			e.printStackTrace();
		}
		this.gebdat= new java.sql.Date(sdf.YEAR_FIELD, sdf.MONTH_FIELD, sdf.DATE_FIELD);
```


----------



## Guest (21. Aug 2007)

Funktioniert lieder noch nciht, jemand eine Idee??


----------



## SlaterB (21. Aug 2007)

die Konstanten der Klasse enthalten keine aktuellen Infos, die werden dir nicht helfen,
nutze das Date, was bei sdf.parse(gebdat); herauskommt:

java.util.Date d = sdf.parse(gebdat); 
this.gebdat= new java.sql.Date(d.getTime());

oder ähnlich


----------



## L-ectron-X (21. Aug 2007)

Der von meinem Gast-Vorposter verwendete Konstruktor ist deprecated und sollte nicht mehr verwendet werden.
Außerdem verwendet er das falsche Pattern. Stattdessen kann man das so schreiben:


```
import java.text.*;
import java.util.*;

public class String2Date {
   private Date date;

   public String2Date(String str) {
      DateFormat formatter = new SimpleDateFormat("dd.MM.yyyy");

      try {
         date = formatter.parse(str);
      }
      catch(ParseException e) {
         e.printStackTrace();
      }

      System.out.println(date);
   }

   public static void main(String[] args) {
      new String2Date("21.08.2007");
   }
}
```


----------

