Bonjour à tous,
Dans le cadre d'un script de tri d'informations par période je cherche à obtenir un string contenant la date du lundi d'une semaine désirée (ici semaine 34 pour l'exemple) au format yyyyMMdd. Voici le code en question :
Lors de mon premier essai je n'avais définit aucune locale et j'obtenais le dimanche précédant le lundi désiré (dû aux semaines dimanche->samedi du standard US).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); Locale localeFR = new Locale("FR","fr"); Calendar calYMD = Calendar.getInstance(localeFR); calYMD.setFirstDayOfWeek(Calendar.MONDAY); calYMD.set(Calendar.WEEK_OF_YEAR , 34); calYMD.set(Calendar.DAY_OF_WEEK , 1); String dateYMD = sdf.format(calYMD.getTime());
Après avoir définit les locales FR et le jour de la semaine désiré j'obtiens une date complètement erronée.
J'ai cherché dans la doc Java, j'ai tenté de supprimer un à un ou d'intervertir les appels mais là je suis à court d'idées... si quelqu'un a une piste je suis preneur, j'ai dû rater ou mal comprendre une particularité des objets Calendar...
Merci pour votre temps.
Klund
Partager