2010-11-12 18 views
9

Existe-t-il une méthode en Java que je peux utiliser pour convertir MM/DD/YYYY en ?De MM/JJ/AAAA à JJ-MMM-AAAA en Java

Par exemple: 05/01/1999-01-MAY-99

Merci!

+0

Notez que la syntaxe de votre modèle est en fait invalide. C'est «y» pour les années et «d» pour le jour du mois. Le 'Y' n'a aucun sens et' D' est le jour de l'année. Vous voulez convertir "MM/jj/aaaa" en "jj-MMM-aaaa". – BalusC

+0

Merci. Étant nouveau à Java, il est très utile d'avoir des choses comme ça m'a été signalé. –

+0

Vous devriez avoir le Locale.English aux options: http: //stackoverflow.com/a/2603676/2114308 – Phuong

Répondre

19

Utilisez un SimpleDateFormat pour analyser la date et l'imprimer avec un format SimpleDateFormat avec le format souhaité.

Voici quelques code:

SimpleDateFormat format1 = new SimpleDateFormat("MM/dd/yyyy"); 
    SimpleDateFormat format2 = new SimpleDateFormat("dd-MMM-yy"); 
    Date date = format1.parse("05/01/1999"); 
    System.out.println(format2.format(date)); 

Sortie:

01-May-99 
+2

Vous voudrez peut-être fournir un 'Locale' au constructeur SDF, sinon il prendra simplement les paramètres régionaux par défaut de la plate-forme pour noms de mois, qui peut ne pas être celui que vous voulez utiliser. – BalusC

+0

Très vrai, vous pouvez également définir le fuseau horaire avec 'format1.setTimeZone (TimeZone.getTimeZone (" GMT "));' –

0
formatter = new SimpleDateFormat("dd-MMM-yy"); 
0

devrait fonctionner ci-dessous.

SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); 
Date oldDate = df.parse(df.format(date)); //this date is your old date object 
1

Essayez ceci,

Date currDate = new Date(); 
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); 
String strCurrDate = dateFormat.format(currDate); 
System.out.println("strCurrDate->"+strCurrDate); 
1

Essayez cette

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); // Set your date format 
     String currentData = sdf.format(new Date()); 
     Toast.makeText(getApplicationContext(), ""+currentData,Toast.LENGTH_SHORT).show();