2015-06-23 4 views
-1

Я работаю над андроидным приложением, в котором я обрабатываю дату и время в UTC с помощью SimpleDateFormat, но проблема в том, что при разборе этой строки я получаю нулевое значение. Мой код приведен ниже, вместе с датой, которую я получил от сборщиков дат.SimpleDateFormat.parse (String) дает null значение android

// It is the date which i get it from pickers mDateSelected = 6/24/2015 4:07:00 PM 
Date myDate = null; 
       SimpleDateFormat simpleDateFormat = new SimpleDateFormat(
         "yyyy-MM-dd HH:mm:ss"); 
       simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC")); 
       try { 

       // Here i am getting null Value ar myDate 
        myDate = simpleDateFormat.parse(mDateSelected); 



       } catch (Exception e1) { 
        e1.printStackTrace(); 

       } 
+0

Где пришел этот mDateSelected из? – Amsheer

+0

Кажется, у вас есть комментарий к строке mDateSelected. – Amy

+0

@ Selvin boss Я не использую носок-марионетку для любых серийных upvotes. Не стоит недооценивать здесь, пожалуйста. Я только что поставил свой вопрос здесь, если у вас есть какие-либо проблемы, то любезно пометьте его для модераторов –

ответ

1

Ваш SimpleDateFormat образец неправильный. Поскольку у вас есть дата в формате

6/24/2015 4:07:00 PM 

должно быть

m/dd/yyyy h:mm:ss a 

и не

"yyyy-MM-dd HH:mm:ss" 
+0

Спасибо за ваш ответ здесь. На самом деле проблема заключается в том, что она не устанавливает время в соответствии с UTC-форматом, например, добавляет 4 + часа к выбранной дате здесь после форматирования. Мой формат даты теперь как Fri Jan 23 20:51:13 GMT + 04: 00 2015 –

0

использовать эти коды следующими ниже

String Todaydate; 
    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
    Todaydate = df.format(new java.util.Date()); 
    df.setTimeZone(TimeZone.getTimeZone("UTC")); 
    Log.d("Current Date", Todaydate); 
Смежные вопросы