Apakah ada cara untuk mengurai string tanggal berikut sebagai July 23 1916
daripada July 23 2016
?
System.out.println(new SimpleDateFormat("yy/MM/dd", Locale.US).parse("16/07/23"));
Apakah ada cara untuk mengurai string tanggal berikut sebagai July 23 1916
daripada July 23 2016
?
System.out.println(new SimpleDateFormat("yy/MM/dd", Locale.US).parse("16/07/23"));
Dokumen Java (http://docs.Oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html) mengatakan:
Untuk penguraian dengan pola tahun yang disingkat ("y" atau "yy"), SimpleDateFormat harus menafsirkan tahun yang disingkat tersebut relatif terhadap abad tertentu. Hal ini dilakukan dengan menyesuaikan tanggal menjadi 80 tahun sebelum dan 20 tahun setelah instance SimpleDateFormat dibuat. Misalnya, menggunakan pola "MM/dd/yy" dan instance SimpleDateFormat yang dibuat pada 1 Jan 1997, string "01/11/12" akan ditafsirkan sebagai 11 Jan 2012 sedangkan string "05/04/ 64" akan diartikan sebagai 4 Mei 1964.
Metode SimpleDateFormat.set2DigitYearStart(Date)
dapat digunakan untuk memperbaiki tahun.
Jika saya memahami pertanyaan Anda maka ya,
SimpleDateFormat sdf = new SimpleDateFormat("yy/MM/dd", Locale.US);
Calendar cal = Calendar.getInstance(Locale.US);
cal.set(1900, 0, 1);
sdf.set2DigitYearStart(cal.getTime());
System.out.println(sdf.parse("16/07/23"));
Sesuai dengan javadoc SimpleDateFormat.set2DigitYearStart(Date)
,
Menetapkan periode 100 tahun. 2 digit tahun akan ditafsirkan dimulai pada tanggal yang ditentukan pengguna.
Ada metode set2DigitYearStart
yang bisa digunakan untuk itu. Ini memungkinkan Anda menentukan tanggal mulai. Tanggal yang diurai akan berada dalam interval [tanggal mulai, tanggal mulai + 100 tahun].
Lihat dokumentasi untuk detailnya.
Mungkin Anda sedang mencari ini.
Calendar cal = Calendar.getInstance();
cal.set( Calendar.YEAR, 1900 );
SimpleDateFormat format = new SimpleDateFormat( "yy/MM/dd", Locale.US );
format.set2DigitYearStart( cal.getTime() );
System.out.println( format.parse( "16/07/23" ) );
System.out.println
maka Anda harus meletakkan baris lain yang menunjukkan contoh keluaran. Jika Anda dapat menghosting contoh yang berfungsi di situs kompiler kode online seperti ideone, itu akan sangat membantu. Semua ini dilakukan untuk membuat jawaban Anda menonjol dan memastikan jawaban Anda tidak mendapat suara negatif. stackoverflow.com/help/how-to-answer
- person Engineer2021; 23.07.2014