1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Java Date() Problem!

Dieses Thema im Forum "PHP & Co." wurde erstellt von dakingno1, 01.11.08.

  1. dakingno1

    dakingno1 Cripps Pink

    Dabei seit:
    31.10.07
    Beiträge:
    149
    Vielleicht gibt es hier ja jemand der mir mal eben helfen kann:

    Folgender Java Programmcode soll mir das Datum - x Tage zurückgeben.
    Das Ergebnis des Timestamp ist meiner Meinung nach korrekt, aber wenn ich es als Date casten will, gibt die Konsole ein falsches Datum aus.

    Code:
            //Datum 
            Date seldate = null;
            if(sel_day != 0) {
                long now = new Date().getTime();
                long newday = (now/1000);
                long dbday = newday - (sel_day * 60 * 60 *24);
                seldate = new Date(dbday);
                
                System.out.println(seldate);
                System.out.print("DATUM");
            }
    
    Das ist die Ausgabe, wenn sel_day == 3 ist:

    Vielleicht hat jemand ne idee?

    Vielen Dank im voraus.
     
  2. bezierkurve

    bezierkurve Danziger Kant

    Dabei seit:
    12.06.05
    Beiträge:
    3.861
    Warum willst du das casten? Wenn du einen String brauchst, solltest du DateFormat nutzen.
     
  3. dakingno1

    dakingno1 Cripps Pink

    Dabei seit:
    31.10.07
    Beiträge:
    149
    ICh will den Wert an ein SQL Query übergeben, daher brauch ich nen Dateobjekt.
     
  4. bezierkurve

    bezierkurve Danziger Kant

    Dabei seit:
    12.06.05
    Beiträge:
    3.861
    Mhh. Habe mir gerade noch mal dein Urspungsbeitrag durchgelesen. Wenn ich dich richtig verstehe, willst du bei einem Date um eine Anzahl von Tagen „zurückstellen“, richtig?

    Da würde ich den Umweg über einen Calendar gehen und dort mittels roll-Methode die Tage zurückgehen.
     
  5. dakingno1

    dakingno1 Cripps Pink

    Dabei seit:
    31.10.07
    Beiträge:
    149
    korrekt, den Weg hatte ich auch schon.
    Dort hatte ich bereits das korrekte Datum, aber das Calendar Objekt passte wiederum nicht zum Date Feld in der db.
    Also fehlte mir dort wieder das korrekte Objekt.... :(
     
  6. bezierkurve

    bezierkurve Danziger Kant

    Dabei seit:
    12.06.05
    Beiträge:
    3.861
    Dann mach doch aus dem Calendar einfach wieder ein Date ;) :

    Code:
    Date myDate = myCalendar.getTime();
    Edit: Bei deinem Schnippsel oben hast du offensichtlich vergessen, wieder mit tausend zu multiplizieren. Die Variante mit dem Kalender finde ich aber trotzdem eleganter.
     
    #6 bezierkurve, 01.11.08
    Zuletzt bearbeitet: 01.11.08

Diese Seite empfehlen