Ich habe eine ältere Windows-Anwendung, die Daten aus einer Datenbank liest. Eine der Spalten ist 'TimeZoneInfoId'. Was in der Legacy-Welt von einer anderen Windows-Anwendung geschrieben wurde, so speichert es die Windows-Zeichenfolge: TimeZoneInfo.CurrentTimeZone.StandardNameGibt es eine Java-Bibliothek, die Olsen-Zeitzonen-IDs zu Windows-Zeitzonen-IDs konvertiert
Ich muss jetzt in dieser Tabelle aus einer Java-Anwendung schreiben. Ich versuche also, eine Bibliothek zu finden, die eine Zeitzonen-ID von der (früher als Olson-Datenbank bekannt) der Windows-Zeitzonen-ID zuordnet. Idealerweise würde ich gerne eine Bibliothek verwenden, die ich theoretisch später auf spätere Versionen aktualisieren könnte, da ich gelesen habe, dass sich die Zeitzoneninformationen manchmal ändern können.
Ich habe bereits ein wenig online gesucht, und die Antworten, die ich gefunden habe, sagen entweder eigene Mapping/Lookup schreiben oder NodaTime verwenden und die Konvertierung in. NET (wenn Sie wirklich eine Bibliothek benötigen, die aktualisiert werden kann).
Ich kann den Legacy-Code nicht aktualisieren (ohne ein komplettes Umschreiben), also stelle nur die Frage hier, da die meisten Antworten, die ich gefunden habe, etwas alt sind, vielleicht gibt es etwas Neues, das ich nutzen kann ;)
Wenn nicht muss es eine benutzerdefinierte Lookup-Funktion I hfea sein.
Danke! Einige gute Infos dort. ICU4J scheint genau die Methode zu haben, die ich brauche. Aber wie du sagst, ist es ziemlich groß für genau diesen Scheck. Ich denke, ich werde versuchen, die XML-Dateien verwenden - die in meinem Quellcode-Steuerelement aktualisiert werden können, im Wesentlichen die gleiche Funktionalität wie ein Upgrade einer Bibliothek :) – procke
Auch erwähnenswert: Unter Windows, Java [behalten ihre eigenen Mappings] (https : //docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/time-zone002.html#CBBCCFCD), in ' \ lib \ tzmappings'. Ich bin jedoch unsicher, ob es eine API gibt, um diese direkt verfügbar zu machen, oder ob sie in Nicht-Windows-Installationen verfügbar ist. Es dient hauptsächlich zur Bestimmung der System-Standardzeitzone. –