2016-05-19 12 views
1

Hallo Ich habe ParseException, wenn ich versuche SimpleDateFormat zu verwenden:java.text.ParseException: unparseable Datum: "

this.firstTweetTime = new SimpleDateFormat("mm/dd/yyyy HH:mm",Locale.US).parse(array[4]); 

wo array[4] ist ein String aus Textdatei Ich habe gelesen, und es ist so: 12/8/2010 11:48

bekomme ich folgende Fehlermeldung:.. enter image description here ich kann nicht verstehen, was schief gelaufen können Sie mir bitte helfen

+1

Es sieht so aus, als hätten Sie die Daten aus der Datei mit der falschen Zeichencodierung gelesen. –

+0

Mindestens ein Fehler ist in Ihrem Muster. Sie sollten "MM/TT/JJJJ HH: MM" mit "MM" für Monatsnummer verwenden. Es kann auch notwendig sein, das Gebietsschema zu ändern, da der Text möglicherweise nicht-ASCII-Ziffern enthält (nicht ganz klar aus Ihrer Beschreibung). –

+0

@Meno ja du hast Recht, aber das war nicht das Problem. In der Tat sollte dies nicht einmal eine Ausnahme auslösen –

Antwort

0

Der Grund, warum ich eine solche Ausnahme hatte, bezog sich nicht auf das Datumsformat, sondern darauf, dass es mit der Quelltextdatei selbst zusammenhing. Stellt sich heraus, dass die Datei als Unicode-Format gespeichert wurde, während es als UTF-8-Format gespeichert werden sollte. das ist der Grund, warum die Daten in der Ausnahme beschädigt erschienen, während ich sie aus der Datei lesen konnte, normalerweise wurde sie nicht durch meine Anwendung verarbeitet.

1

es wie das Datum sieht man bekommt von Ihrem Array hat einige Zeichen, die SimpleDateFormat nicht verstehen kann, setzen Sie Array [4] in einen Logger oder eine andere Zeile, in der Sie debuggen und genau sehen können, was Sie zu parsen versuchen.