且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Android的,我怎么能字符串转换为日期?

更新时间:2023-02-16 20:57:06

从字符串到日期

 字符串DTSTART =2010-10-15T09:27:37Z;
SimpleDateFormat的格式=新的SimpleDateFormat(YYYY-MM-dd'T'HH:MM:ss'Z');
尝试 {
    日期日期= format.parse(DTSTART);
    的System.out.println(日期);
}赶上(ParseException的E){
    // TODO自动生成的catch块
    e.printStackTrace();
}
 

从日期为字符串

  SimpleDateFormat的日期格式=新的SimpleDateFormat(YYYY-MM-dd'T'HH:MM:ss'Z');
尝试 {
    日期日期=新的日期();
    字符串日期时间= dateFormat.format(日期);
    的System.out.println(当前日期时间:+日期时间);
}赶上(ParseException的E){
    // TODO自动生成的catch块
    e.printStackTrace();
}
 

I store current time in database each time application starts by user.

Calendar c = Calendar.getInstance();
    String str = c.getTime().toString();
    Log.i("Current time", str);

In database side, I store current time as string (as you see in above code). Therefore, when I load it from database, I need to cast it to Date object. I saw some samples that all of them had used "DateFormat". But my format is exactly as same as Date format. So, I think there is no need to use "DateFormat". Am I right?

Is there anyway to directly cast this String to Date object? I want to compare this stored time with current time.

Thanks

======> update

Thanks dear guys. I used following code:

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;            

   }

From String to Date

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) {  
    // TODO Auto-generated catch block  
    e.printStackTrace();  
}

From Date to String

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) {  
    // TODO Auto-generated catch block  
    e.printStackTrace();  
}