Tarikh yang tidak boleh dihuraikan: Selesaikan Pengecualian Penghuraian Tarikh dalam Java
Apabila cuba menghuraikan rentetan tarikh, anda mungkin menghadapi "Tarikh yang tidak boleh dihuraikan" pengecualian, walaupun apa yang kelihatan sebagai format tarikh yang sah. Isu ini sering timbul apabila tempat lalai pada komputer anda berbeza daripada tempattempat yang digunakan dalam rentetan format tarikh.
Dalam kes khusus anda, kod berikut menunjukkan isu:
import java.util.Date; String strDate = "Wed, 09 Feb 2011 12:34:27"; Date date; SimpleDateFormat FORMATTER = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss"); try { date = FORMATTER.parse(strDate.trim()); System.out.println(date); } catch (ParseException e) { e.printStackTrace(); }
Berjalan kod di atas menghasilkan pengecualian berikut:
java.text.ParseException: Unparseable date: "Wed, 09 Feb 2011 12:34:27" at java.text.DateFormat.parse(DateFormat.java:337)
Untuk menyelesaikan isu ini, anda perlu menentukan tempat yang sesuai semasa membuat SimpleDateFormat objek. Dalam kes ini, anda harus menggunakan Locale.ENGLISH seperti berikut:
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss", Locale.ENGLISH);
Dengan menyatakan tempat tempatan bahasa Inggeris, anda memastikan bahawa corak tarikh ditafsirkan mengikut konvensyen bahasa Inggeris, tanpa mengira tempat lalai pada anda sistem. Ini akan membolehkan kod menghuraikan rentetan tarikh dengan jayanya.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Pengecualian 'Unparseable Date' di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!