2013-07-18 2 views
-1

Я пытаюсь преобразовать заданную дату и время в миллисекунды. Я не могу этого добиться.Дата и время в миллисекундах в Android

Ниже приведен формат даты и времени

02 - 07 (DD - MM) 8:50:00 AM (чч мм сс а)

Вот что я пробовал:

String myDate = "2-05"; 
String myTime = "08:50:00"; 
String ampm = "AM"; 
String toParse = myDate + " " + myTime+" " + ampm; 


try 
{ 
    SimpleDateFormat formatter3 = new SimpleDateFormat("d-M hh:mm:ss a"); // I assume d-M, you may refer to M-d for month-day instead. 
    Date date; 
    date = formatter3.parse(toParse); 
    long millis = date.getTime(); 
    Log.e ("Date in milli",""+millis); 
} 
catch (ParseException e) 
{ 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} // You will need try/cat 

Ниже ошибка я получаю:

08-04 16:50:34.368: W/System.err(6603): java.text.ParseException: Unparseable date: "2-05 08:50 AM" 
08-04 16:50:34.368: W/System.err(6603):  at java.text.DateFormat.parse(DateFormat.java:626) 

Не знаете, где я неправильно? Может кто-нибудь мне помочь?

Спасибо!

+1

(«d-ММ чч: мм: сс а»), вы забыли М – Blackbelt

+0

Я пытался его .не работает – Mary

+0

какая ошибка вы получили? Также я думаю, что вы должны использовать 'dd' вместо' d' – Blackbelt

ответ

0

Существует разница между исключением, которое вы получаете, и датой, которую вы поставляете в коде. Исключение указывает, что предоставленная строка - 2-05 08:50 AM, но вы также должны указать поле секунд. Должно быть, 2-05 08:50:00 AM есть где-то несоответствие? Вы используете старый код?

Как определили другие, если месяц всегда две цифры, вы должны использовать MM вместо M

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