사용자가 응용 프로그램을 시작할 때마다 데이터베이스에 현재 시간을 저장합니다.
Calendar c = Calendar.getInstance();
String str = c.getTime().toString();
Log.i("Current time", str);
데이터베이스 측에서 현재 시간을 문자열로 저장합니다 (위의 코드에서 볼 수 있듯이). 따라서 데이터베이스에서로드 할 때 Date 객체로 캐스팅해야합니다. 나는 그들 모두가 "DateFormat"을 사용한 샘플들을 보았다. 그러나 내 형식은 날짜 형식과 정확히 동일합니다. 따라서 "DateFormat"을 사용할 필요가 없다고 생각합니다. 내가 맞아?
어쨌든이 String을 Date 객체로 직접 캐스팅 할 수 있습니까? 이 저장된 시간을 현재 시간과 비교하고 싶습니다.
감사
======> 업데이트
고마워요 다음 코드를 사용했습니다.
private boolean isPackageExpired(String date){
boolean isExpired=false;
Date expiredDate = stringToDate(date, "EEE MMM d HH:mm:ss zz yyyy");
if (new Date().after(expiredDate)) isExpired=true;
return isExpired;
}
private Date stringToDate(String aDate,String aFormat) {
if(aDate==null) return null;
ParsePosition pos = new ParsePosition(0);
SimpleDateFormat simpledateformat = new SimpleDateFormat(aFormat);
Date stringDate = simpledateformat.parse(aDate, pos);
return stringDate;
}