Java " = SimpleDateFormat DateFormat und der Rückkehr zu einem Datum ist falsch

Heute ist Dienstag, 9. Februar 2010 und wenn ich drucken Sie das Datum, das ich das falsche Datum:

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");

Date today = formatter.parse(String.format("%04d-%02d-%02d",
        Calendar.getInstance().get(Calendar.YEAR),
        Calendar.getInstance().get(Calendar.MONTH),
        Calendar.getInstance().get(Calendar.DAY_OF_MONTH)));

System.out.println("Today is " + today.toString());

Die print Zeile daraus: "Heute ist Sa Jan 09 00:00:00 CST 2010"

Es ist sicher nicht Samstag Jan 09, es ist Dienstag Feb 09. Ich gehe davon aus, dass ich etwas Falsches Tue, also kann jemand lassen Sie mich wissen, was ist hier falsch? Muss ich manuell die Tag der Woche?

Update
Anmerkung: ich kann Sie nicht initialisieren wollen heute mit new Date() weil ich will die Stunden, Minuten, Sekunden und Millisekunden initialisiert 0. Dies ist notwendig, damit ich vergleichen kann eine Benutzer-Eingabe Datum mit heute: wenn der Benutzer die Eingänge heutige Datum und ich verwenden Sie das Formatierungsprogramm zu konstruieren, die ein Date-Objekt, dann, wenn ich initialisieren heute mit new Date() und ich Vergleiche die beiden Termine - heute nach der vom Benutzer ausgewählte Datum (was falsch ist). Also ich muss initialisiert werden heute zu Beginn des Tages ohne die hr/min/sec/ms.

  • Warum auf der Erde würde man "heute" so? Warum nicht Datum heute = new Date()? Ihr Weg ist der lange Weg und, wie Sie sehen können, nicht einmal richtig.
  • Es ist in einer JSP. Angenommen, der Benutzer wählt heute, wie der Tag, die Sie wollen, dann Ihre Eingabe wird weitergeleitet zu einer anderen JSP. Die Eingabe des Benutzers wird aufgezeichnet, bevor ich Sie initialisieren das heutige Datum, in der zweiten jsp (mit new Date() initialisiert das auf die aktuelle Zeit, das ist NACH meiner Eingabe des Benutzers), so wird heute immer nach dem Benutzer ausgewählte Datum, obwohl der Benutzer ausgewählt hat, am selben Tag. Also ich muss initialisieren Sie heute und halten Sie die hr/min/sec/ms bei 0.
  • Klingt wie die zweite JSP sollte parsing "heute" von der ersten JSP HTTP-request, nicht den Aufruf "neuer Termin". Wenn die Antworten, die verwirrt sind, es ist, weil Ihre Fragen und Anforderungen sind wie gut.
  • Danke, ich werde ihn in Erinnerung behalten.
InformationsquelleAutor Kiril | 2010-02-10
Schreibe einen Kommentar