我知道这会给我这个月的一天,一个数(11,21,23):
SimpleDateFormat formatDayOfMonth = new SimpleDateFormat("d");
Run Code Online (Sandbox Code Playgroud)
但是,如何格式化月份中的日期以包含序数指标,比方说11th,21st或者23rd?
每次应用程序启动时,我将当前时间存储在数据库中.
Calendar c = Calendar.getInstance();
String str = c.getTime().toString();
Log.i("Current time", str);
Run Code Online (Sandbox Code Playgroud)
在数据库方面,我将当前时间存储为字符串(如上面的代码所示).因此,当我从数据库加载它时,我需要将其强制转换为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;
}
Run Code Online (Sandbox Code Playgroud)