2010-02-02 10 views
2

Je suis nouveau à Joda-Time et je cherchais à obtenir le jour de travail précédent/semaine. Mon essai initial a été fait sur un lundi et je voulais obtenir la date T -1 qui sera vendredi:Est-il possible d'obtenir le jour précédent de la semaine en utilisant Joda-Time?

DateTimeZone zone = DateTimeZone.forID("Europe/London"); 
Chronology coptic = GJChronology.getInstance(zone); 

DateTime dt = new DateTime(coptic); 
DateTime minusOneDay = dt.minusDays(1); 

System.out.println(minusOneDay); 

Mais comme je le rendement attendu la date de dimanche. Est-ce que quelqu'un sait comment obtenir le jour de la semaine précédente? Merci d'avance ..

+1

Après un peu plus je me rends compte maintenant des recherches que je dois résoudre un problème plus important que quelques jours de la semaine. J'ai besoin de vacances dans des endroits différents. Ces vacances changent beaucoup donc vous devrez vous abonner aux changements de quelqu'un comme http://www.financialcalendar.com/ que vous alimentez dans un calendrier ou utilisez quelque chose comme http://objectlabkit.sourceforge.net/ à ce sujet, Joda ou toute autre bibliothèque de données ne conservera jamais ces informations, et elles ne le devraient pas, car elles changent si souvent. –

Répondre

2

Cela ne semble pas être géré par Joda.

Il existe cependant un projet sourceforge qui cherche à le gérer.

objectlabkit

0

Si le jour est lundi ou dimanche, alors vous devez soustraire trois ou deux jours respectivement. Dans tous les autres cas, soustrayez un jour. Cela suppose une semaine de travail du lundi au vendredi (ce qui ne s'applique pas à toutes les cultures).

+0

J'espérais que vous pourriez ajouter une locale ou un calendrier/chronologie et que Joda-Time pourrait le faire pour vous. Je ne veux pas vraiment dire, si c'est vendredi soustraire 3 jours et si vendredi est un jour férié soustraire 4 jours etc ... Je veux être paresseux et laisser quelqu'un d'autre le faire :-) –