Date_parse
Fermé
laurent2403
Messages postés
79
Date d'inscription
jeudi 11 novembre 2010
Statut
Membre
Dernière intervention
23 février 2020
-
29 juin 2013 à 09:15
KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 29 juin 2013 à 11:38
KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 29 juin 2013 à 11:38
3 réponses
gohlink
Messages postés
50
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
16 décembre 2015
12
29 juin 2013 à 09:26
29 juin 2013 à 09:26
Bonjour,
Il faut passer par la classe SimpleDateFormat
http://docs.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html
Il faut passer par la classe SimpleDateFormat
http://docs.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html
tksteph
Messages postés
204
Date d'inscription
samedi 20 mars 2010
Statut
Membre
Dernière intervention
3 janvier 2018
25
Modifié par tksteph le 29/06/2013 à 10:05
Modifié par tksteph le 29/06/2013 à 10:05
tu remplaces ta dernière instruction par ceci , et tu change le type de retour de ta méthode en String
Si tu veux être le meilleur, il faut que tu battes le meilleur!
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); return sdf.format(calendar2.getTime());
Si tu veux être le meilleur, il faut que tu battes le meilleur!
KX
Messages postés
16755
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
29 juin 2013 à 11:38
29 juin 2013 à 11:38
Pour moi le problème ne vient pas de la méthode deplacerDate, elle renvoie un objet Date, ce qui est tout à fait correct, il n'y a pas de raison de modifier le résultat.
Si tu obtiens "Thu Jun 20 00:00:00 SBT 2002" c'est parce qu'ensuite tu essayes d'afficher cette date, ce n'est donc qu'un simple problème d'affichage, il serait donc plus correct de modifier ton affichage plutôt que le résultat de la méthode.
Par exemple, en utilisant System.out.printf (voir la documentation de Formatter)
Remarque : la classe GregorianCalendar permet de simplifier tes calculs de date.
Si tu obtiens "Thu Jun 20 00:00:00 SBT 2002" c'est parce qu'ensuite tu essayes d'afficher cette date, ce n'est donc qu'un simple problème d'affichage, il serait donc plus correct de modifier ton affichage plutôt que le résultat de la méthode.
Par exemple, en utilisant System.out.printf (voir la documentation de Formatter)
Date date = deplacerDate(dateDepartRef, nb_jour_deplacer); System.out.printf("%tF",date); // ISO 8601 : "AAAA-MM-JJ" System.out.println(); System.out.printf("%1$tY/%1$tm/%1$td",date); // "AAAA/MM/JJ"
Remarque : la classe GregorianCalendar permet de simplifier tes calculs de date.
public static Date deplacerDate(Date dateDepartRef, int nb_jour_deplacer) { GregorianCalendar calendar = new GregorianCalendar(); calendar.setTime(dateDepartRef); calendar.add(GregorianCalendar.DAY_OF_YEAR, nb_jour_deplacer); return calendar.getTime(); }