[java] probleme de Date

probleme de Date [java] - Java - Programmation

Marsh Posté le 14-08-2002 à 14:42:11    

Bon, si ma question est trop con (et elle doit l'être), s'il vous ple patapai, je suis fatigué et j'attends le WE.
Je voudrais recuperer le jour, mois et année courants. J'ai fait ca :
 

Code :
  1. DateFormat format = DateFormat.getDateInstance();
  2.       Calendar calendar = format.getCalendar();
  3.       calendar.setTime(new Date());


pour le jour et l'année, ca va, mais quand je fais calendar.get(Calendar.MONTH), il renvoie 7. J'ai vérifié, c'est normal, Calendar.AUGUST vaut 7. Mais y'aurait-il une manière "propre" d'avoir le bon chiffre, plutot que le (calendar.get(Calendar.MONTH) + 1) que je viens de bidouiller ?

Reply

Marsh Posté le 14-08-2002 à 14:42:11   

Reply

Marsh Posté le 14-08-2002 à 14:59:55    

Houlà, tu t'es compliqué la vie!!  
 
Essaie ça :  

Code :
  1. Calendar c = Calendar.getInstance();
  2. SimpleDateFormat sdf = new SimpleDateFormat("MM" );
  3. String monthNumber = sdf.format(c.getTime());

 
 
pour voir..Si tu veux un int, tu fais un Integer.parseInt(monthNumber)
 
ouala

Reply

Marsh Posté le 14-08-2002 à 15:23:37    

En effet, ca va mieux. Merci, je suis un peu perdu dans cette partie de la doc, je trouve ca nu peu confus (je suis un peu crevé aussi).

Reply

Marsh Posté le 14-08-2002 à 15:33:21    

ouais, c normal...Avec tout ce qui est déprécié dans Date, c'est un peu le bordel : y'a plein de redondances et de trucs un peu confus...Mais bon, ça devrait s'arranger au bout d'un moment..

Reply

Marsh Posté le 14-08-2002 à 15:45:49    

remarque c normal
ce qu'il y a dans Calendar, c pas fait pour etre affiché.
Si pour une certaine Locale, on décidait que les mois doivent s'afficher avec une lettre et non un chiffre pour le format court, on serait baisé.

Reply

Marsh Posté le 14-08-2002 à 15:50:56    

Oui, c'est juste. J'ai tout repris, et je crois que j'avais abordé le problème à l'envers. Je crois que je commence  à mieux comprendre l'esprit du truc maintenant.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed