Cara Mengendalikan Pengecualian Penghuraian Rentetan Tarikh
Menghuraikan rentetan tarikh ke dalam objek Tarikh kadangkala boleh membawa kepada pengecualian, seperti yang ditunjukkan dalam kod berikut:
String target = "Thu Sep 28 20:29:30 JST 2000"; DateFormat df = new SimpleDateFormat("E MM dd kk:mm:ss z yyyy"); Date result = df.parse(target);
Kod ini membuang perkara berikut pengecualian:
java.text.ParseException: Unparseable date: "Thu Sep 28 20:29:30 JST 2000"
Sebab ralat ini ialah corak yang digunakan untuk menghurai tidak sepadan dengan format rentetan tarikh. Secara khususnya, corak menjangkakan singkatan hari 3 huruf (EEE) dan singkatan bulan 3 huruf (MMM), tetapi rentetan tarikh mengandungi singkatan hari 2 huruf (E) dan nama bulan penuh (Sep).
Untuk membetulkan masalah, corak hendaklah dikemas kini agar sepadan dengan format tarikh rentetan:
DateFormat df = new SimpleDateFormat("EEE MMM dd kk:mm:ss z yyyy", Locale.ENGLISH);
Selain itu, menyatakan tempattempat memastikan bahawa singkatan hari dan bulan ditafsirkan dengan betul, walaupun tempattempat lalai platform bukan bahasa Inggeris.
Menggunakan corak yang diperbetulkan, kod kini berjaya menghuraikan rentetan tarikh dan mengembalikan objek Tarikh yang mewakili tarikh dan masa yang ditentukan dalam rentetan, dilaraskan untuk masa semasa zon:
Thu Sep 28 07:29:30 BOT 2000
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan ParseException Apabila Menghuraikan Rentetan Tarikh?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!