Tukar format tarikh "EEE MMM dd HH:mm:ss ZZZ yyyy" kepada java.sql.Date
Soalan:
Anda cuba menukar tarikh dalam format "EEE MMM dd HH:mm:ss ZZZ yyyy" kepada format "YYYY-MM-DD" untuk memasukkan ke dalam pangkalan data MySQL, tetapi tarikh yang dimasukkan adalah tidak betul dan setiap baris adalah sama .
Penyelesaian menggunakan Java 8:
<code class="language-java">LocalDate date4 = ZonedDateTime .parse(date, DateTimeFormatter.ofPattern("EEE MMM dd HH:mm:ss zzz yyyy", Locale.ENGLISH)) .toLocalDate(); java.sql.Date date5 = java.sql.Date.valueOf(date4);</code>
Penjelasan:
Kod ini memanfaatkan kelas masa Java 8 moden dan menggunakan API fasih untuk kejelasan dan kesederhanaan. Ia menghuraikan rentetan tarikh menggunakan ZonedDateTime
, menukarnya kepada LocalDate
dan kemudian menggunakan java.sql.Date.valueOf()
untuk mencipta objek LocalDate
daripada java.sql.Date
.
Nota:
SimpleDateFormat
agar sepadan dengan format yang diingini: <code class="language-java">SimpleDateFormat formatnow = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.ENGLISH); SimpleDateFormat formatneeded = new SimpleDateFormat("yyyy-MM-dd");</code>
Atas ialah kandungan terperinci Bagaimana untuk Menukar 'EEE MMM dd HH:mm:ss ZZZ yyyy' kepada java.sql.Date untuk MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!