2016-02-18 8 views
2

Я применяю простой формат даты к моей строке даты. Coversion отлично работает в версии Lollipop и зефира Moto G3, но это бросает исключение в Moto G2.Moto G2 Исключительное исключение из Marshmallow для преобразования формата даты

Вот мой код:

SimpleDateFormat fmt; 

     if(dateString.contains(":")) 
     { 
      fmt = new SimpleDateFormat("hh:mm a"); 
     } 
     else 
      fmt = new SimpleDateFormat("hh a"); 

     Date date = null; 
     try { 
      date = fmt.parse(dateString); 
     } catch (ParseException e) { 

      e.printStackTrace(); 

     } 

     SimpleDateFormat fmtOut = new SimpleDateFormat("HH:mm:ss"); 
     return fmtOut.format(date); 

Вход Cat:

java.text.ParseException: Unparseable date: "11 AM" (at offset 3) 
02-18 13:48:21.886 1562-2096/com.example.k W/System.err:  at java.text.DateFormat.parse(DateFormat.java:579) 
02-18 13:48:21.886 1562-2096/ccom.example.k W/System.err:  at com.braintech.kwikgrocery.utils.Utility.convertTimeFormat(Utility.java:236) 
02-18 13:48:21.886 1562-2096/com.example.k W/System.err:  at com.braintech.kwikgrocery.activity.CheckOutConfirmOrderActivity$GetTimeSlots.doInBackground(CheckOutConfirmOrderActivity.java:289) 
02-18 13:48:21.886 1562-2096/com.example.k W/System.err:  at com.braintech.kwikgrocery.activity.CheckOutConfirmOrderActivity$GetTimeSlots.doInBackground(CheckOutConfirmOrderActivity.java:239) 
02-18 13:48:21.886 1562-2096/com.example.k W/System.err:  at android.os.AsyncTask$2.call(AsyncTask.java:295) 
02-18 13:48:21.886 1562-2096/com.example.k W/System.err:  at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
02-18 13:48:21.886 1562-2096/com.example.k W/System.err:  at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) 
02-18 13:48:21.886 1562-2096/com.example.k W/System.err:  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
02-18 13:48:21.886 1562-2096/com.example.k W/System.err:  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
02-18 13:48:21.886 1562-2096/com.example.k W/System.err:  at java.lang.Thread.run(Thread.java:818) 

ответ

4

Вызов обрезки на строке и заменить

SimpleDateFormat fmtOut = new SimpleDateFormat("HH:mm:ss"); 

С

SimpleDateFormat fmtOut = new SimpleDateFormat("HH:mm:ss", Locale.ENGLISH); 
Смежные вопросы