2009-12-18 6 views
4

J'aimerais pouvoir analyser les chaînes relatives comme now et yesterday et obtenir JodaTime DateTimes. C'est possible? DateTimeFormat.forPattern et ne semble pas prendre en charge les temps relatifs anglais et je ne connais pas d'autres options d'analyse dans JodaTime.Puis-je analyser les temps relatifs avec JodaTime?

Je devrais ajouter que j'utilise scala-time, mais que je peux facilement passer aux classes JodaTime actuelles.

+0

Je ne suis pas sûr de comprendre la question. Pouvez-vous illustrer un exemple de ce que vous aimeriez faire? – Ichorus

Répondre

4

Vous auriez besoin d'écrire une bibliothèque séparée ou un DateTimeParser. DateTimeParser est l'interface utilisée en interne par Joda-Time pour analyser le texte. N'importe qui peut l'implémenter et le brancher directement dans le système d'analyse Joda-Time à l'aide de DateTimeFormatterBuilder.

1

Voyons voir ici - "maintenant", "hier", "aujourd'hui", "demain". Est-ce à propos de ça? :-)

JodaTime ne les analysera pas pour vous mais il devrait être assez trivial pour écrire votre propre fonction (ou enum) pour le faire; vous pouvez même jeter des choses comme "après-demain" si vous en avez envie.

"Maintenant" semble être la seule valeur pour laquelle DateTime serait approprié, cependant - tous les autres ressemblent plus à LocalDate (ou, éventuellement, DateMidnight) pour moi.