每次用户启动应用程序时,我都会将当前时间存储在数据库中。
Calendar c = Calendar.getInstance();
String str = c.getTime().toString();
Log.i("Current time", str);
在数据库端,我将当前时间存储为字符串(如上面的代码所示)。因此,当我从数据库加载它时,我需要将它转换为Date对象。我看到了一些他们都使用过"DateFormat“的示例。但我的格式与日期格式完全相同。因此,我认为没有必要使用"DateFormat“。我说的对吗?
有没有什么办法可以直接将这个字符串转换为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;
}
发布于 2011-12-20 17:33:35
从字符串到日期
String dtStart = "2010-10-15T09:27:37Z";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
try {
Date date = format.parse(dtStart);
System.out.println(date);
} catch (ParseException e) {
e.printStackTrace();
}
从日期到字符串
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
try {
Date date = new Date();
String dateTime = dateFormat.format(date);
System.out.println("Current Date Time : " + dateTime);
} catch (ParseException e) {
e.printStackTrace();
}
发布于 2011-12-20 17:31:15
SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");
Date d = dateFormat.parse(datestring)
发布于 2011-12-20 17:34:40
通过使用SimpleDateFormat或DateFormat类
例如
try{
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); // here set the pattern as you date in string was containing like date/month/year
Date d = sdf.parse("20/12/2011");
}catch(ParseException ex){
// handle parsing exception if date string was different from the pattern applying into the SimpleDateFormat contructor
}
https://stackoverflow.com/questions/8573250
复制相似问题