2011-08-23 4 views
3

J'utilise le package temporel Joda (http://joda-time.sourceforge.net/index.html) pour calculer les durées entre deux instances historiques dans une application/activité Android. Les deux cas peuvent par exemple se produire au XIXe siècle en Russie (système calendaire julien - avant que la Russie n'adopte le système du calendrier grégorien) et au XXe siècle en Europe occidentale (calendrier grégorien). L'inconvénient est que je dois maintenant choisir des chronologies juliennes ou grégoriennes en fonction de mes connaissances sur les dates de basculement réelles des pays spécifiques. Ces dates de basculement individuelles peuvent être trouvées sur Wikipedia ou dans la littérature.Réglages d'usine Jodatime - Où trouver les dates/heures de basculement historiques spécifiques?

Comme je le vois, il y a trois solutions à mes problèmes:

1) Recherchez toutes les dates déboisées pour les pays de la littérature. Ensuite, pointez manuellement la date/heure de basculement spécifique pour les fuseaux horaires individuels. Et utilisez le paramètre d'usine dans GJChronology.getInstance (zone, factorySettingCutoverDateTimeMillis, 4) où factorySettingCutoverDateTimeMillis est un long contenant la valeur millisecondes de l'instance spécifique dans le temps lorsque le basculement entre calendriers julien et grégorien s'est produit dans la zone DateTimeZone spécifique.

2) Identifiez où les dates de basculement spécifiques se trouvent éventuellement dans Jodatime (ou ailleurs accessible sur Android), puis utilisez-les.

3) Utilisez le GJChronology.getInstance de dafault (zone, null, 4) qui spécifie la date par défaut en Octobre 1582 (qui est correct pour de nombreux pays, mais pas tous).

La solution 1) est possible, mais nécessite un travail manuel à mettre en œuvre. La solution 2 est la meilleure, tandis que la solution 3) est où j'utilise maintenant la valeur par défaut dans la GJChronology ou la sélection de Julian ou Gregorian si je connais le système de calendrier particulier utilisé à ce moment-là. J'espère obtenir de l'aide pour arriver à la solution 2) ou obtenir de l'aide pour me diriger vers la meilleure liste de date/heure compilée compilée en ligne pour économiser du travail en implémentant la solution 1). Merci de votre aide.

Répondre

1

Je ne crois pas que le temps Joda a cette information dans - je suis venu certainement pas à travers elle. L'idée d'un «pays» n'existe pas vraiment dans Joda Time, et le basculement n'est pas nécessairement associé à un fuseau horaire non plus. Cela exclut la solution 2, je crois.

Je ne connais aucune source officielle de cette information - je ne crois pas que ce soit dans le CLDR Unicode, par exemple ... mais est-ce que this page pourrait vous être utile? Je n'ai aucune idée de sa fiabilité de complétude, mais je suppose que c'est un début :)

+0

Salut merci pour le lien. C'est utile pour commencer. – Joje

+0

Et merci d'avoir arrêté ma recherche dans Jodatime pour trouver les données à utiliser pour les paramètres d'usine. – Joje

Questions connexes