2012-01-02 9 views
2

J'ai le temps comme "2011-12-03 12:00:19" comment convertir en "Fri 2 Décembre 2011", je sais que ce http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html, mais me donne Erreur:Format de temps 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) 

Mon code est ::

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

ce qui est votre 'a pattern'? – Vaandu

+0

Modèle de chaîne = "EEE d MMMMM yyyy"; –

+2

Date date = new Date (mytime); Je pense que cette ligne vous donne l'erreur. mettre le code de débogage System.out.println ("1") & ("2") avant et après cette ligne, puis exécuter et voir si cette ligne génère vraiment l'erreur ou quoi? – Android

Répondre

7

Convertissez votre entrée Date puis format.

 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); 

Sortie:

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 tellement j'ai oublié de le convertir en Date premier ... –

+0

Mais quel mois mois son retour en janvier c'est en décembre? –

+0

SimpleDateFormat dateFormat = new SimpleDateFormat ("aaaa-jj-MM HH: mm: ss"); est correct –