Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1413 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Nombre de jours ouvrés entre deux dates

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Nombre de jours ouvrés entre deux dates

n°1896396
johnson950
Posté le 17-06-2009 à 18:39:48  profilanswer
 

Bonjour,
 
je souhaite développez une petite fonction permettant de calculer le nombre de jours ouvrés entre deux dates.
cependant les dates seront très courtes (5 jours maxi).
ce que j'aimerais si c'est possible c'est d'incrémenter au fur et à mesure la date et de vérifier si il s'agit d'un jours ouvré ou pas.
 
Ex :
 
du 15 au 21 juin 2009
15 = lundi on incrémente le compteur
16 = mardi on incrémente le compteur
17 = mercredi = on incrémente le compteur
18 = jeudi on incrémente un compteur
19 = vendredi on incrémente le compteur
20 = samedi on incrémente PAS
21 = dimanche on incrémente PAS
 
Est ce possible ?
 
Le code que j'ai actuellement calcule uniquement le nombre de jours total :

Code :
  1. Calendar calendar1 = new GregorianCalendar();
  2. calendar1.set(Calendar.YEAR, 2006);
  3. calendar1.set(Calendar.MONTH, 4);
  4. calendar1.set(Calendar.DAY_OF_MONTH, 1);
  5. Date date1 = calendar1.getTime();
  6. //  2006-08-15
  7. Calendar calendar2 = new GregorianCalendar();
  8. calendar2.set(Calendar.YEAR, 2006);
  9. calendar2.set(Calendar.MONTH, 8);
  10. calendar2.set(Calendar.DAY_OF_MONTH, 15);
  11. Date date2 = calendar2.getTime();
  12. // Différence
  13. long diff = Math.abs(date2.getTime() - date1.getTime());
  14. long numberOfDay = (long)diff/CONST_DURATION_OF_DAY;
  15. System.err.println("Le nombre de jour est : " + numberOfDay);

mood
Publicité
Posté le 17-06-2009 à 18:39:48  profilanswer
 

n°1896454
johnson950
Posté le 17-06-2009 à 23:10:19  profilanswer
 

pour ce qui cherche :
 

Code :
  1. int retard = 0;
  2.         // Date de retour prévu
  3.         Calendar calendar1 = new GregorianCalendar();
  4.         calendar1.set(Calendar.YEAR, 2009);
  5.         calendar1.set(Calendar.MONTH, 5);
  6.         calendar1.set(Calendar.DAY_OF_MONTH, 15);
  7.         Date date1 = calendar1.getTime();
  8.         //  Date du jour
  9.         Calendar calendar2 = new GregorianCalendar();
  10.         Date date2 = calendar2.getTime();
  11.         calendar2.setTime(date2);
  12.         // Différence
  13.         long diff = Math.abs(date2.getTime() - date1.getTime());
  14.         long numberOfDay = (long)diff/86400000;
  15.         if(numberOfDay != 0){
  16.              for(int i=1;i<=numberOfDay;i++){
  17.                  if(calendar1.get(Calendar.DAY_OF_WEEK) != Calendar.SUNDAY && calendar1.get(Calendar.DAY_OF_WEEK) != Calendar.SATURDAY)
  18.                     retard++;
  19.                  calendar1.add(Calendar.DAY_OF_MONTH, 1);
  20.              }
  21.         }
  22.         System.out.println("Nombre de jours de retard : " + retard);


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Nombre de jours ouvrés entre deux dates

 

Sujets relatifs
probleme pour parser des dates [résolu]Nombre scientifique
[résolu] parcours d'un char** sans connaitre le nombre de chainesrenseignement pour lancéer un fichier automatiquement tous les jours e
Nombre de pages dans un édition ?Compter le nombre d'arguments en batch
Gestion des dates d'un sondage[SQL]Calculer le nombre de lundi entre 2 dates
calcul du nombre de jours ouvrés entre 2 dates 
Plus de sujets relatifs à : Nombre de jours ouvrés entre deux dates


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR