Jika kita menghitung tanggal sekarang dengan dua hari sebelumnya relatif gampang. Atau mungkin tanggal sekarang dengan beberapa hari yang lalu, berapa jaraknya? Mungkin ini juga gampang. Tapi bagaimana jika jaraknya sepuluh tahun yang lalu? ini jadi sulit. Berikut ini source code yang menarik terkait:
1. Jarak antara dua tanggal:
Calendar c1 = Calendar.getInstance(); //new GregorianCalendar();
Calendar c2 = Calendar.getInstance(); //new GregorianCalendar();
c1.set(2010, 8, 22);
c2.set(2009, 8, 6);
System.out.println("Days Between " + c1.getTime() + " and " + c2.getTime() + " is");
System.out.println((c2.getTime().getTime() - c1.getTime().getTime()) / (24 * 3600 * 1000));
2. Penjumlahan/Pengurangan tanggal:
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
//format tanggal bisa kita ubah sesuai keinginan misalnya "yyyy/MM/dd"
Calendar c1 = Calendar.getInstance();
// jika ingin mengubah tanggalnya, gunakan c1.set(tahun, bulan, tanggal)
System.out.println("Waktu sekarang : " + c1.getTime());
c1.add(Calendar.DATE, 24);
// kalau ingin kurang 24 hari, tinggal ganti saja angka 24 jadi -24
// kalau ingin ubah tahun juga sama caranya, ganti DATE jadi YEAR, bulan juga gitu.
System.out.println("24 hari lagi dari tanggal sekarang : " + sdf.format(c1.getTime()));
-= Sapto Sutardi =-
Mataram, 22 Agustus 2010
Posted by dede on Oktober 25, 2011 at 11:06 pm
kalo menghitung prediksi kelahiran menggunakan visual midlet gimana gan,.,mohon pencerahannya??
Posted by sapto on Oktober 25, 2011 at 11:27 pm
Buat sja pake visual midlet, pada peritah commandAction-nya dengan mengambil data tanggal pada formnya (text field misalnya) tinggal masukin rumus HPHT (hari pertama haid terakhir)
Textfield –> ambil teks –> masukkan ke rumus HPHT –> olah –> keluar nilai prediksi tanggal lahir.
*) Aplikasi nya udah sy buat sktr 2 tahun lalu.