247 votes

Comment ajouter un jour à une date?

Je veux ajouter un jour à une date donnée. Comment puis-je le faire?

Date dt = new Date();

Maintenant, je veux ajouter un jour à cette date.

556voto

Daniel Rikowski Points 27193

Étant donné un Date dt vous avez plusieurs possibilités:

Solution 1: Vous pouvez utiliser l' Calendar classe:

Calendar c = Calendar.getInstance(); 
c.setTime(dt); 
c.add(Calendar.DATE, 1);
dt = c.getTime();

Solution 2: Vous devriez sérieusement envisager d'utiliser la Joda-Time library, en raison des lacunes de l' Date classe. Avec Joda-Time, vous pouvez effectuer les opérations suivantes:

DateTime dtOrg = new DateTime(dt);
DateTime dtPlusOne = dtOrg.plusDays(1);

Solution 3: Avec Java 8 , vous pouvez également utiliser la nouvelle JSR 310 API (qui est inspiré par Joda-Time):

LocalDateTime.from(dt.toInstant()).plusDays(1);

83voto

Mnementh Points 19831
Date today = new Date();
Date tomorrow = new Date(today.getTime() + (1000 * 60 * 60 * 24));

À la Date de constructeur en utilisant le nombre de millisecondes depuis le UNIX époque. le getTime()-méthode vous donne cette valeur. Ainsi, l'ajout de l'millisecondes pour un jour, fait le tour. Si vous voulez faire ces manipulations régulièrement je vous recommande de définir des constantes pour les valeurs.

Remarque importante: ce n'est pas correct dans tous les cas. Lire les commentaires.

13voto

navneet Points 59

Cela permettra d'augmenter n'importe quelle date exactement

String untildate="2011-10-08";//can take any date in current format    
SimpleDateFormat dateFormat = new SimpleDateFormat( "yyyy-MM-dd" );   
Calendar cal = Calendar.getInstance();    
cal.setTime( dateFormat.parse(untildate));    
cal.add( Calendar.DATE, 1 );    
String convertedDate=dateFormat.format(cal.getTime());    
System.out.println("Date increase by one.."+convertedDate);

9voto

katana0815 Points 38

Je ferais attention à l'aide de

Date today = new Date();    
Date tomorrow = new Date(today.getTime() + (1000 * 60 * 60 * 24));

Si vous utilisez un Calendar Timezone avec la Journée de l'Épargne, sur l'évolution de la journée de l'été à l'hiver, il ne sera pas sauter à la prochaine journée.

7voto

aberrant80 Points 4544

Dans le noyau de Java, le Calendrier est recommandé pour la date de manipulation.

Check this out: http://www.java2s.com/Tutorial/Java/0040__Data-Type/0580__Calendar.htm

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X