Datentyp "Calendar" umwandeln und ausgeben können

fenerli23

Erfahrenes Mitglied
Hi,

habe da ein Problem mit der Ausgabe von dem Datum in meiner Datenbank.
zur Zeit sieht es so aus:
Code:
if(resp.get_return()[j].getType().equals("DATE")){
	System.out.format(format, resp.get_return()[k].getZeileDatum());
}

Das wir als Ausgabe von Datum angezeigt:
Code:
java.util.GregorianCalendar[time=1179439200000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Europe/Berlin",offset=3600000,dstSavings=3600000,useDaylight=true,transitions=143,lastRule=java.util.SimpleTimeZone[id=Europe/Berlin,offset=3600000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=2,startMonth=2,startDay=-1,startDayOfWeek=1,startTime=3600000,startTimeMode=2,endMode=2,endMonth=9,endDay=-1,endDayOfWeek=1,endTime=3600000,endTimeMode=2]],firstDayOfWeek=2,minimalDaysInFirstWeek=4,ERA=1,YEAR=2007,MONTH=4,WEEK_OF_YEAR=20,WEEK_OF_MONTH=3,DAY_OF_MONTH=18,DAY_OF_YEAR=138,DAY_OF_WEEK=6,DAY_OF_WEEK_IN_MONTH=3,AM_PM=0,HOUR=0,HOUR_OF_DAY=0,MINUTE=0,SECOND=0,MILLISECOND=0,ZONE_OFFSET=3600000,DST_OFFSET=3600000]

Nun meine Frage wie kann ich in dieser Klasse eine schöne Ausgabe von dem Datum erzeugen habe etwa so angefangen: Ist wirklich sehr dringend für jede HIlfe wäre ich sehr dankbar.
Code:
Calendar datum = resp.get_return()[k].getZeileDatum();
datum.getTime();
 
habe dies mal so realisiert:
Java:
private static final SimpleDateFormat DATEFORMAT = new SimpleDateFormat("dd.MM.yyyy");

if(resp.get_return()[j].getType().equals("DATE")){
	Calendar datum = resp.get_return()[k].getZeileDatum();
	datum.getTime();
	System.out.format(format, DATEFORMAT.format(datum));
}

jedoch zeigt der an, dass hier
Java:
datum.getTime();
diese Fehlermeldung
Code:
Exception in thread "main" java.lang.NullPointerException
	at service.Client.main(Client.java:63)

Könnt ihr mir helfen...?! Müsste man eventuell noch eine Methode für das SimpleDateFormat implementieren?
 
NullPointer heißt immer, dass du etwas verwendest, dass es (noch) nicht gibt. Wurde
Code:
datum
jemals initialisiert? Gibs doch mal mit
Code:
System.out.println(datum);
aus, dann siehst du ob null ist oder nicht.
 
er gibt null aus da der erste tabelleninhalt mit dem Datentytp "Calender" auch kein Datum entählt...?!

deswegen habe ich jetzt noch eine if- Schleife abfrage mit hineinimplementiert:
Java:
if(resp.get_return()[j].getType().equals("DATE")){
	Calendar datum = resp.get_return()[k].getZeileDatum();
	System.out.println(datum);
	        if(datum != null) {	
		       datum.getTime();
		       System.out.format(format, DATEFORMAT.format(datum));
	        }
}


nun kriege ich diese Fehlermeldung aus, wenn ein inhalt vorhanden ist:
Code:
Exception in thread "main" java.lang.IllegalArgumentException: Cannot format given Object as a Date
	at java.text.DateFormat.format(DateFormat.java:279)
	at java.text.Format.format(Format.java:133)
	at meinpackage.Client.main(Client.java:66)

Wie muss ich nun vorgehen?
 
ja ich will das datum aufrufen und ausgeben , habe das jetzt mal weg kommentiert funktioniert trotzdem nicht habe wieder folgende Fehlermeldung:
Code:
Exception in thread "main" java.lang.IllegalArgumentException: Cannot format given Object as a Date
	at java.text.DateFormat.format(DateFormat.java:279)
	at java.text.Format.format(Format.java:133)
	at meinpackage.Client.main(Client.java:66)
 
Und WO tritt der Fehler auf? Vieleicht hier
Code:
 System.out.format(format, DATEFORMAT.format(datum));
?
 
Schau doch mal in die Java API was die Methode
Code:
DATEFORMAT.format(...)
für einen Typ erwartet und check mal, was du für einen übergibst...
 
Zurück