Menggunakan LocalDateTime#parse()
(atau ZonedDateTime#parse()
jika string berisi bagian zona waktu) untuk menguraikan a String
dalam pola tertentu menjadi a LocalDateTime
.
String oldstring = "2011-01-18 00:00:00.0";
LocalDateTime datetime = LocalDateTime.parse(oldstring, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.S"));
Menggunakan LocalDateTime#format()
(atau ZonedDateTime#format()
) untuk memformat a LocalDateTime
ke String
dalam pola tertentu.
String newstring = datetime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
System.out.println(newstring); // 2011-01-18
Atau , saat Anda belum berada di Java 8, gunakan SimpleDateFormat#parse()
untuk mem-parsing String
dalam pola tertentu menjadi a Date
.
String oldstring = "2011-01-18 00:00:00.0";
Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S").parse(oldstring);
Gunakan SimpleDateFormat#format()
untuk memformat a Date
ke String
dalam pola tertentu.
String newstring = new SimpleDateFormat("yyyy-MM-dd").format(date);
System.out.println(newstring); // 2011-01-18
Lihat juga:
Pembaruan : sesuai upaya Anda yang gagal: polanya peka terhadap huruf besar-kecil . Baca java.text.SimpleDateFormat
javadoc apa kepanjangan dari masing-masing bagian. Jadi berdiri misalnya M
selama berbulan-bulan dan m
beberapa menit. Juga, tahun ada empat digit yyyy
, bukan lima yyyyy
. Lihat lebih dekat pada cuplikan kode yang saya posting di sini di atas.