我正在使用一个函数来取出给定日期和当前日期之间的差异。在所有的地方,这个功能工作正常,但在一个地方,它会抛出unparseable date
例外。
以下是我使用的功能:
public boolean timeDiff24hrs(String alarmTime) {
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy'T'HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
Date date = new Date();
String s = sdf.format(date);
String alarmDateStr="";
try {
Date alarmDate=sdf.parse(alarmTime);
alarmDateStr=sdf.format(alarmDate);
} catch (ParseException e) {
e.printStackTrace();
}
int diff = diffOf2Days(alarmDateStr, s);
if (diff > 1439) {
return true;
}
return false;
}
这里我尝试执行try
块时遇到异常。
我传递给函数的alarmDate
是:
1/31/2018 8:58:12 AM +00:00
有人可以解释一下。
答案 0 :(得分:0)
您使用的日期格式1/31/2018 8:58:12 AM +00:00
不正确SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy'T'HH:mm:ss");
并返回与预期值不同的值。
1/31/2018 8:58:12 AM +00:00
返回1/31 / 2018T8:58:12
你正试图通过以下
{{1}}