Rumah >Java >javaTutorial >Mengapa Java Date() Salah Memaparkan Tarikh?
Java Date() Salah Memaparkan Tarikh
Satu perangkap yang sering dihadapi oleh pengaturcara ialah mendapatkan tarikh yang tidak dijangka daripada kaedah Java Date(). Jika anda menghadapi isu ini dan hasilnya menunjukkan kiraan hari yang salah, teliti penjelasan terperinci ini untuk memahami puncanya.
Memahami Format Tarikh
The Kelas SimpleDateFormat membolehkan anda menentukan rentetan corak untuk memformat tarikh. Dalam kod anda, anda telah menggunakan corak "YYYY-MM-DD." Walau bagaimanapun, adalah penting untuk mengambil perhatian sifat sensitif huruf besar bagi penentu format ini.
Dalam kes anda, anda berhasrat untuk menggunakan "dd" untuk memaparkan hari bulan tetapi secara tidak sengaja menulis "DD." Akibatnya, Java menganggapnya sebagai hari dalam setahun, itulah sebabnya ia memaparkan "2013-02-43" (43 Februari adalah tidak sah).
Membetulkan Format Tarikh
Untuk menyelesaikan isu ini, kemas kini kod anda seperti berikut:
<code class="java">public String getDate() { DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); Date date = new Date(); return dateFormat.format(date); }</code>
Perubahan kepada "yyyy-MM-dd" ini akan memastikan tarikh diformatkan sebagai tahun-bulan-hari.
Semasa menyelesaikan masalah ini, anda juga perlu mengambil perhatian bahawa menggunakan Calendar.getInstance() dengan medan Calendar.DAY_OF_MONTH akan mengembalikan hari yang betul dalam bulan itu, menunjukkan bahawa ralat terletak semata-mata pada pemformatan tarikh.
Atas ialah kandungan terperinci Mengapa Java Date() Salah Memaparkan Tarikh?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!