String formatındaki bir tarihi güncel tarihle karşılaştırmaya çalışıyorum. Ben böyle yaptım (test etmedim ama çalışmalı), ancak kullanımdan kaldırılmış yöntemler kullanıyorum. Bir alternatif için iyi bir öneriniz var mı? Teşekkürler.
Not: Java'da randevu yapmaktan gerçekten nefret ediyorum. Aynı şeyi yapmanın o kadar çok yolu var ki, hangisinin doğru olduğundan gerçekten emin değilsiniz, dolayısıyla benim sorum burada.
String valid_until = "1/1/1990";
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("dd/mm/yyyy");
Date strDate = sdf.parse(valid_until);
int year = strDate.getYear(); // this is deprecated
int month = strDate.getMonth() // this is deprecated
int day = strDate.getDay(); // this is deprecated
Calendar validDate = Calendar.getInstance();
validDate.set(year, month, day);
Calendar currentDate = Calendar.getInstance();
if (currentDate.after(validDate)) {
catalog_outdated = 1;
}
Calendar,SimpleDateFormat,Dateveya diğer uzun eskimiş Java tarih ve saat sınıfların herhangi. Bunun yerinejava.time, modern Java tarih ve saat API'sini kullanın . Evet, Android'de kullanabilirsiniz. Daha eski Android için Android Project'te ThreeTenABP'yi kullanma bölümüne bakın .