每次用户启动应用程序时,我都将当前时间存储在数据库中。
Calendar c = Calendar.getInstance();
String str = c.getTime().toString();
Log.i("Current time", str);
在数据库端,我将当前时间存储为字符串(如上面的代码所示)。因此,当我从数据库加载它时,我需要将它强制转换为 Date 对象。我看到一些样本,他们都使用了“日期格式”。但我的格式与 Date 格式完全相同。因此,我认为没有必要使用“ 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;
}