Bagaimana cara mengonversi string menjadi LocalDate
?
Saya telah melihat contoh seperti:
LocalDate dt = new LocalDate("2005-11-12");
Tapi senar saya seperti:
2005-nov-12
Saat Anda menggunakan Joda Time, Anda harus menggunakan DateTimeFormatter
:
final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MMM-dd");
final LocalDate dt = dtf.parseLocalDate(yourinput);
Jika menggunakan Java 8 atau yang lebih baru, lihat jawaban hertzi
java.time
Sejak Java 1.8, Anda dapat mencapai ini tanpa perpustakaan tambahan dengan menggunakan kelas java.time . Lihat Tutorial .
Sintaksnya hampir sama.
sumber
Anda mungkin harus beralih dari DateTime ke LocalDate.
Menggunakan Waktu Joda:
sumber
Pemformatan tanggal waktu dilakukan oleh
org.joda.time.format.DateTimeFormatter class
. Tiga kelas menyediakan metode pabrik untuk membuat pemformat , dan ini satu. Yang lainnya adalahISODateTimeFormat
danDateTimeFormatterBuilder
.final org.joda.time.LocalDate class
adalah kelas datetime tetap yang mewakili tanggal tanpa zona waktu .LocalDate
adalah benang-aman dan abadi , asalkan Kronologi adalah juga. Semua kelas Kronologi standar yang disediakan aman untuk thread dan tidak dapat diubah.sumber
DateTimeFormatter
memiliki format bawaan yang dapat langsung digunakan untuk mengurai urutan karakter. Ini case Sensitive, Nov akan bekerja namun nov dan NOV tidak akan bekerja:DateTimeFormatterBuilder
menyediakan cara kustom untuk membuat formatter. Tidak Peka Kasus, Nov, nov dan NOV akan diperlakukan sama.sumber