Beim Versuch, ein bestimmtes Datum in ein bestimmtes Format zu konvertieren, stoßen Java-Entwickler möglicherweise auf die Ausnahme: „java.lang.IllegalArgumentException: Das angegebene Objekt kann nicht als Datum formatiert werden.“ Dieser Fehler tritt auf, wenn versucht wird, ein nicht unterstütztes Objekt als Datum zu formatieren.
Um dieses Problem zu beheben, müssen wir die richtige Formatierungsstrategie verwenden. Die DateFormat.format-Methode akzeptiert Date-Objekte als Eingabe. Im bereitgestellten Beispiel ist der Eingabewert eine Zeichenfolge, die ein Datum darstellt, kein Date-Objekt.
Die Lösung besteht darin, zwei separate SimpleDateFormat-Objekte zu verwenden: eines zum Parsen der Eingabezeichenfolge und eines zum Formatieren des Ergebnisses. Zum Beispiel:
<code class="java">// Define the output format (mm/yyyy for months and years) DateFormat outputFormat = new SimpleDateFormat("mm/yyyy", Locale.US); // Define the input format (yyyy-MM-dd'T'HH:mm:ss.SSSX) DateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSX", Locale.US); String inputText = "2012-11-17T00:00:00.000-05:00"; try { // Parse the input string as a Date object Date date = inputFormat.parse(inputText); // Format the Date object using the desired format String outputText = outputFormat.format(date); } catch (ParseException e) { // Handle parsing exceptions here }</code>
Durch diesen Ansatz können wir eine Zeichenfolge, die ein Datum darstellt, effektiv in ein gewünschtes Format konvertieren und gleichzeitig den Fehler „Das gegebene Objekt kann nicht als Datum formatiert werden“ vermeiden.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit dem Fehler „Das angegebene Objekt kann nicht als Datum formatiert werden“ in Java um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!