Negative value for date.getTIme()



在获取特定日期的时间时,我得到负值。可能是什么原因。我的代码是这样的。我有两个字符串值,分别存储创建日期和到期日期以及创建日期date1和date2。当我检查长值时,我会得到负值。我的Logcat也在那里。

Log.i("Cdate ",cdate);
        Log.i("Ddate ",ddate);
    datesdf=new SimpleDateFormat("yyyy-MM-dd");
            try
            {
                date1=datesdf.parse(cdate);
                date2=datesdf.parse(ddate);
            }
            catch (ParseException e) 
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    long creationdate=date1.getTime();
            long duedatee=date2.getTime();
            Log.i("Creation date",Long.toString(creationdate));
            Log.i("Due date",Long.toString(duedatee));

Logcat::

02-08 11:29:10.020: I/Cdate(1244): 8-1-2013
02-08 11:29:10.020: I/Ddate(1244): 08-0-2013
02-08 11:29:10.030: I/Creation date(1244): -61741117800000
02-08 11:29:10.030: I/Due date(1244): -61743796200000

用于解析的数据格式与指定日期的方式不匹配。你得到的日期是8年。

您的日期格式错误。您需要更改为

 datesdf=new SimpleDateFormat("dd-MM-yyyy"); 

假设2013年8月8日代表2013年1月8日。

相关内容

  • 没有找到相关文章

最新更新