Frage

Ich habe ein Problem mit der Berechnung des Zeitunterschieds zwischen zwei Zeitzonen.

Wenn ich am Standort bin, wissen Sie den Breitengrad und die Länge und die aktuelle Zeit. Ich gehe zu Ort bi kenne Breite und Länge und die aktuelle Zeit.

So berechnen Sie den Zeitunterschied zwischen den beiden Strompunkten (in UTC)

War es hilfreich?

Lösung

Holen Sie sich zunächst eine Datenbank oder Bibliothek, die LAT/Long umsetzt, um das Land und den Staat/die Provinz zu erhalten. Verwenden Sie dann die Nstimezone -Klasse, um die Zeitzone für ein bestimmtes Land abzurufen. Sie können solche Datenbanken von vielen Websites kaufen, dh: http://www.ip2location.com/

Um die tatsächliche Konvertierung durchzuführen, würden Sie so etwas tun:

NSTimeZone *sourceTimeZone =
    [NSTimeZone timeZoneWithAbbreviation: @"GMT"];
NSTimeZone *destinationTimeZone =
    [NSTimeZone timeZoneWithAbbreviation: @"EST"];

NSInteger sourceSeconds =
    [sourceTimeZone secondsFromGMTForDate:date];
NSInteger destinationSeconds =
    [destinationTimeZone secondsFromGMTForDate:date];
NSTimeInterval interval = destinationSeconds - sourceSeconds;
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top