Comment calculer le temps écoulé à partir de maintenant avec Joda-Time?

J'ai besoin de calculer la temps écoulé depuis une date donnée jusqu'à maintenant et de l'afficher avec le même format que StackOverflow questions, à savoir:

15s ago
2min ago
2hours ago
2days ago
25th Dec 08

Savez-vous comment y parvenir avec le Java Joda-Time bibliothèque? Est-il une méthode d'assistance qui implémente déjà, ou devrais-je écrire l'algorithme de moi-même?

  • "25 Déc 08" n'est pas un "temps écoulé depuis une date donnée jusqu'à maintenant" (qui vous a écrit en gras 😉
  • Je sais. Mais c'est l'affichage de question de temps comme ça. Si le délai est assez long, puis il affiche la date exacte.
  • Je suis assez mécontent de la StackOverflow genre de manipulation de dates. Vous obtenez beaucoup de chiffres précis au premier abord (il y a 37 secondes), mais ils deviennent vite très vague (2 jours il ya). Seulement après que l'heure est affichée au format absolu, vous obtenez de voir le précis (au moins à quelques minutes) la date et l'heure à nouveau. Je crois que ce genre de données n'est utile qu'en plus de l'absolu, mais ne la remplace pas.
  • Vous pouvez obtenir le exacte datetime dans l'info-bulle. Il suffit de passer le datetime un peu tout 🙂
  • Joda-Time n'est pas bien conçu pour l'impression de relative (elapsed) de temps lorsque vous avez besoin de fonctionnalités supplémentaires. L'on a accepté la réponse est ok, mais pas localisables (uniquement pour l'anglais). Si vous avez besoin de support de la localisation puis il y a de mieux de la 3e partie des bibliothèques. ocpsoft/PrettyTime est une meilleure option, mais fonctionne avec les anciens de la classe java.util.Date seulement. Cependant, ma lib Time4J est à mon humble avis le meilleur de lib pour l'impression une fois (il y a-format) ou à la fois en format "3 mois, 4 jours". Il est également accessible aux fait 72 langues.
InformationsquelleAutor fabien7474 | 2010-02-01