2012-01-02 2 views
2

у меня есть время в качестве «2011-12-03 12:00:19», как преобразовать его в «пт 2 декабря 2011», я знаю, что это http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html, но дает мне ошибку:Формат времени Android/java?

Exception in thread "main" java.lang.IllegalArgumentException: Cannot format given Object as a Date 
    at java.text.DateFormat.format(Unknown Source) 
    at java.text.Format.format(Unknown Source) 
    at com.timestamp.NewTimeStamp.<init>(NewTimeStamp.java:21) 
    at com.timestamp.NewTimeStamp.main(NewTimeStamp.java:35) 

Мой код есть ::

String mytime ="2011-12-03 12:00:19"; 
String pattern = "EEE d MMMMM yyyy"; 
SimpleDateFormat dateFormat = new SimpleDateFormat(pattern); 

     Date date = new Date(mytime); 
     String time = dateFormat.format(date); 

     System.out.println("=== > " + time); 
+1

что ваш 'pattern' имеет? – Vaandu

+0

Строковый шаблон = "EEE d MMMMM yyyy"; –

+2

Дата дата = новая дата (время); Я думаю, что эта строка дает вам ошибку. поместите отладочный код System.out.println («1») и («2») до и после этой строки, а затем выполните и посмотрите, действительно ли эта строка генерирует ошибку или что? – Android

ответ

7

Преобразование ввода в формат Date, а затем.

 String mytime ="2011-12-03 12:00:19"; 
     SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-dd-MM HH:mm:ss"); 
     Date myDate = dateFormat.parse(mytime); 
     System.out.println("=== > " + myDate); 
     SimpleDateFormat timeFormat = new SimpleDateFormat("EEE d MMMMM yyyy"); 
     String time = timeFormat.format(myDate); 
     System.out.println("=== > " + time); 

Выход:

D:\Work\Stand alone Java classes>javac Test2.java && java Test2 
=== > Wed Jan 12 12:00:19 IST 2011 
=== > Wed 12 January 2011 
+0

thnx так много я забыл преобразовать его в Date first ... –

+0

Но wht abt месяц его возвращение январь фактически это декабрь? –

+0

SimpleDateFormat dateFormat = new SimpleDateFormat ("yyyy-dd-MM HH: mm: ss"); верно –

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