1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
| package org.c3.unedicbase.commun;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class CalendrierSemaine
{
static int DIMANCHE=7;
static int LUNDI=1;
static int MARDI=2;
static int MERCREDI=3;
static int JEUDI=4;
static int VENDREDI=5;
static int SAMEDI=6;
private String calJour;
private String calMois;
private String calAnnee;
private String calDate;
private GregorianCalendar calTemp;
public CalendrierSemaine(Date date)
{
int numSemaine =0;
int annee = 0;
calTemp = new GregorianCalendar();
calTemp.setTime(date);
calTemp.setFirstDayOfWeek(Calendar.MONDAY);
annee = date.getYear();
calTemp.set(Calendar.YEAR,annee);
numSemaine = numSemaine(date);
if ((numSemaine>0)&&(numSemaine<=53))
{
calTemp.set(Calendar.WEEK_OF_YEAR,numSemaine);
}
else
{
System.out.println("Erreur de numéro de semaine");
}
calAnnee=Integer.toString(annee);
}
public String debutSemaine()
{
calTemp.set(Calendar.DAY_OF_WEEK,Calendar.MONDAY);
return this.resultat();
}
public String finSemaine()
{
calTemp.set(Calendar.DAY_OF_WEEK,Calendar.SUNDAY);
return this.resultat();
}
public String finSemaineTravail()
{
calTemp.set(Calendar.DAY_OF_WEEK,Calendar.FRIDAY);
return this.resultat();
}
public String jourSemaine(int numJourSem)
{
calTemp.set(Calendar.DAY_OF_WEEK,numJourSem);
return this.resultat();
}
private String resultat()
{
calJour=Integer.toString(calTemp.get(Calendar.DAY_OF_MONTH));
calJour=this.correctionFormat(calJour);
/* Janvier=0, Février=1 ainsi de suite donc il faut ajouter plus pour corriger*/
calMois=Integer.toString(calTemp.get(Calendar.MONTH)+1);
calMois=this.correctionFormat(calMois);
calDate=""+calJour+"/"+calMois+"/"+calAnnee;
return calDate;
}
private String correctionFormat(String nombre)
{
String sortie="";
int num=Integer.parseInt(nombre);
if (num<10)
{
sortie="0"+nombre;
}
else
{
sortie=nombre;
}
return sortie;
}
public int numSemaine(Date date)
{
GregorianCalendar calendar = new GregorianCalendar() ;
calendar.setTime(date);
int numSemaine = calendar.get(Calendar.WEEK_OF_YEAR);
return numSemaine;
}
} |