SimpleDateFormatter wird nicht analysieren!
-
02-10-2019 - |
Frage
Hallo Ich versuche, die SimpleDateFormatter zu verwenden, um das Datum Wed, 30 Jun 2010 15:07:06 CST
Ich verwende den folgenden Code
public static SimpleDateFormat postedformat =
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z");
Date newDate = new Date(posteformat.parse("Wed, 30 Jun 2010 15:07:06 CST"));
, aber ich bin immer ein Illegal. Bitte Hilfe!
Lösung
postedformat.parse()
gibt einen Date
, und es gibt keinen Date(Date)
Konstruktor.
Vermutlich um den Anruf zu new Date
entfernen, so dass Sie Date newDate = poste....
sagen genügt
Andere Tipps
Ihr Codefragment nicht kompiliert. Diese leichte Modifikation compiliert und Parsen erfolgreich:
public static void main(String[] args) throws ParseException {
SimpleDateFormat postedformat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z");
Date newDate = postedformat.parse("Wed, 30 Jun 2010 15:07:06 CST");
System.out.println("newDate = " + newDate);
}
Dies wird mit Hilfe von Java 6 auf Mac OS X.
Es gibt keinen java.util.Date()
Konstruktor, der ein java.util.Date
als Argument
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateFormat {
public static SimpleDateFormat postedformat =
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z");
public static void main(String[] args) {
try {
Date newDate = postedformat.parse("Wed, 30 Jun 2010 15:07:06 CST");
System.out.println("Date: " + newDate);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
Ausgänge:
Date: Wed Jun 30 22:07:06 BST 2010
Die javadoc Beispiele zeigen unescaped Komma aber für die US-locale. Also entweder versuchen, das Komma zu entkommen (als Aaron vorgeschlagen) oder den anderen Konstruktor verwenden und das Gebietsschema:
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);
Ein weiteres Problem könnte sein, die Zeitzone ( ‚CST‘), die auf die auf der Hand und mehrdeutige auf der anderen Seite ist veraltet (per javadoc von java.util.TimeZone
). Test, wenn es ohne die Zeitzone Attribut funktioniert (sowohl in dem Format-String und der Wert).