2014-10-01 3 views
-1

Я получаю эту ошибку, вдруг Он работал отлично до этого ..поддается синтаксическому анализу дата: «нуль» (по смещению 0) андроида

Мой формат даты «11 сентября 2014 3:31 вечера»

public boolean validateLuckyDrawExpirationDate(String strExpirationDate) throws Exception{     


      SimpleDateFormat df=new SimpleDateFormat("MMM dd yyyy hh:mmaa"); 
      Date expirationDateObj=df.parse(strExpirationDate); 
      Date today=new Date(); 

      boolean isAfter=today.after(expirationDateObj); 

      boolean isBefore=today.before(expirationDateObj); 

      Log.v("isToday", String.valueOf(isAfter)); 
      Log.v("isBefore", String.valueOf(isBefore)); 

      Log.v("Original date", String.valueOf(expirationDateObj)); 
      Log.v("SimpleDateFormat", String.valueOf(df.format(expirationDateObj))); 
      Log.e("startDate...2",strExpirationDate); 

      return isBefore; 

    } 
+0

Ваш ** strExpirationDate ** 'String' есть ** ** нуль. – Hariharan

ответ

1

Как ваш заголовок вопроса говорит, что вы обрабатываете null этому методу. Из-за этого вы получите unparseable date:“null”.

Там не проблема с этим методом для Sep 11 2014 3:31PM

1

Вы уверены, что вы вызова метода validateLuckyDrawExpirationDate() со значением параметра Sep 11 2014 3:31PM?

Попробуйте поместить свой код в try-catch блоке:

public boolean validateLuckyDrawExpirationDate(String strExpirationDate) throws Exception{     
    Boolean isBefore = false; 
    try{ 

     SimpleDateFormat df=new SimpleDateFormat("MMM dd yyyy hh:mmaa"); 
     Date expirationDateObj=df.parse(strExpirationDate); 
     Date today=new Date(); 

     boolean isAfter=today.after(expirationDateObj); 

     isBefore=today.before(expirationDateObj); 

     Log.v("isToday", String.valueOf(isAfter)); 
     Log.v("isBefore", String.valueOf(isBefore)); 

     Log.v("Original date", String.valueOf(expirationDateObj)); 
     Log.v("SimpleDateFormat", String.valueOf(df.format(expirationDateObj))); 
     Log.e("startDate...2",strExpirationDate); 
    } 
    catch (ParseException e) { 
     Toast.makeText(getApplicationContext(), "Date is not valid!", 
         Toast.LENGTH_LONG).show(); 
    } 
     return isBefore; 

} 
Смежные вопросы