Frage

Ich möchte zwischen dem gregorianischen und julianische Kalender konvertieren können (Anmerkung: nicht „julian date“) mit NSCalendar auf dem iPhone. Wie kann ich Unterklasse NSCalendar den julianischen Kalender benutzen? Ich möchte dies für 1582 oder 1752 oder ein bestimmtes Jahr ohne Bezug zu tun.

War es hilfreich?

Lösung

Während Sie sicher gehen an es haben kann, aber ich vermute, dass NSCalendar ist schwierig zu Unterklasse. Es ist gebührenfrei überbrückt, die Dinge kompliziert; mit NSLocale umschlungen, die Dinge kompliziert; es ist eher mit Kennungen initialisiert als unterklassiert wird, was die Dinge kompliziert; und gibt keine Anleitung, auf dem Methoden sind die Grundelemente, die ... verkompliziert die Dinge ...

Sie benötigen die Unterklasse, um Stecker in eine bestehende Architektur? Wenn nicht, wäre es wahrscheinlich am einfachsten, ein Objekt von Grund auf neu zu erstellen, die eine ähnliche Schnittstelle. Sie können einen NSGregorianCalendar nutzen können die meiste Arbeit für Sie zu tun, und nur das Datum Offset durch die erforderlichen Tage vor dem Tag Komponenten zu berechnen. Sie werden für 1700, 1800 spezielle Logik benötigen und 1900 (und natürlich 2100, etc.), da NSGregorianCalendar werden Sie erstellen aktuelle Komponenten für einen Schalttag in jenen Jahren nicht zulassen, aber das ist wahrscheinlich immer noch einfacher als alle die Datumskomponenten zu tun Berechnungen von Hand.

Einfach nur neugierig, was das Ziel eines solchen Kalenders wäre?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top