2016-06-16 1 views
0

J'essaie d'analyser la date en date. J'ai essayé code suivantDate erronée lors de la conversion de la date

public class convertDate 
{ 
    public static void main(String args[]) 
    { 
     String strlastruntime ="16/06/2016 9:17:00 AM",dateFormat ="MM/dd/yyyy hh:mm:ss a"; 

     try 
     { 
      strlastruntime = strlastruntime.trim(); 
      System.out.println("strlastruntime = "+strlastruntime+" dateFormat = "+dateFormat); 
      java.util.Locale l = java.util.Locale.US; 
      java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat(dateFormat,l); 
      //System.out.println("formatter = "+formatter); 
      java.util.Date date = formatter.parse(strlastruntime); 
      System.out.println("date = "+date); 
      long time = date.getTime(); 
      System.out.println("time = "+time); 

     } 
     catch(java.text.ParseException ee) 
     { 
      ee.printStackTrace(); 
      System.out.println(ee); 
     } 
    } 
} 

Mais, je reçois la mauvaise sortie de la chaîne d'entrée ci-dessus Je reçois cette sortie lors de l'exécution du code:

strlastruntime = 16/06/2016 9:17:00 AM dateFormat = MM/dd/yyyy hh:mm:ss a 
date = Thu Apr 06 09:17:00 IST 2017 
time = 1491450420000 

Alors, s'il vous plaît aidez-moi à trouver solution ..

+0

Quelle sortie vous attendiez-vous à la place? –

Répondre

2

changement dateFormat ="MM/dd/yyyy hh:mm:ss a"; à dateFormat ="dd/MM/yyyy hh:mm:ss a";

code complet

public static void main(String args[]) 
    { 
     String strlastruntime ="16/06/2016 9:17:00 AM",dateFormat ="dd/MM/yyyy hh:mm:ss a"; 

     try 
     { 
      strlastruntime = strlastruntime.trim(); 
      System.out.println("strlastruntime = "+strlastruntime+" dateFormat = "+dateFormat); 
      java.util.Locale l = java.util.Locale.US; 
      java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat(dateFormat,l); 
      //System.out.println("formatter = "+formatter); 
      java.util.Date date = formatter.parse(strlastruntime); 
      System.out.println("date = "+date); 
      long time = date.getTime(); 
      System.out.println("time = "+time); 

     } 
     catch(java.text.ParseException ee) 
     { 
      ee.printStackTrace(); 
      System.out.println(ee); 
     } 
    } 

sortie:

strlastruntime = 16/06/2016 9:17:00 AM dateFormat = dd/MM/yyyy hh:mm:ss a 
date = Thu Jun 16 09:17:00 IST 2016 
time = 1466048820000 
+0

Hai, Puis-je savoir pourquoi ce format de date (dateFormat = "MM/jj/aaaa hh: mm: ss a") ne fonctionne pas dans mon code? –

+0

@KaviChinna 16/06/2016 est au format jj/mm/aaaa – SpringLearner

+0

@KaviChinna est votre problème résolu? – SpringLearner