Calender

Status
Nicht offen für weitere Antworten.

nimo22

Aktives Mitglied
Hallo,

habe

Code:
 ...// initialize the current time.
            Calendar now = Calendar.getInstance();
            
            DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.MEDIUM);   
            dateFormat.format(now);...

Will nun den String (?!) "dateFormat.format(now)" über printf auslesen, dann kommt so ne blöde Fehlermeldung:

Code:
java.lang.IllegalArgumentException: Cannot format given Object as a Date

Was soll das???
 
L

lohr

Gast
Laut Api braucht die Funktion format() einen Date-Datentyp als Übergabeparameter:
public final String format(Date date)

Lösungsansatz:
Code:
Calendar now = Calendar.getInstance(); 
Date myDate = now.getTime();
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.MEDIUM);    
dateFormat.format(myDate);
 

nimo22

Aktives Mitglied
ich dachte "DATE" is deprecated...

macht doch eigentlich dann gar kein Sinn ein Objekt vom Typ Calender zu erstellen, wenn ich Calender nicht direkt formatieren kann. Dann kann ich das doch gleich alles mit DATE machen. Also z.B. so:
Code:
public static void main(String[] args) {

        Date now = new Date();

 
        System.out.println(" 1. " + now.toString());
        System.out.println(" 2. " + DateFormat.getInstance().format(now));

Wo hab ich denn nun den Vorteil von Calender, wenn ich dennoch auf das deprecated DATE zugreifen muss.???
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben