ユーザーがアプリケーションを起動するたびに現在の時刻をデータベースに保存します。
Calendar c = Calendar.getInstance();
String str = c.getTime().toString();
Log.i("Current time", str);
データベース側では、現在の時刻を文字列として保存します(上記のコードを参照)。したがって、データベースから読み込む場合は、Dateオブジェクトにキャストする必要があります。すべてが「DateFormat」を使用したサンプルをいくつか見ました。しかし、私のフォーマットは日付フォーマットとまったく同じです。したがって、「DateFormat」を使用する必要はないと思います。私は正しいですか?
とにかくこの文字列を日付オブジェクトに直接キャストする方法はありますか?この保存された時間と現在の時間を比較したいと思います。
ありがとう
======> 更新
親愛なる皆さん、ありがとう。私は次のコードを使用しました:
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;
}