Come calcolare la differenza di tempo tra due posizioni
-
16-09-2019 - |
Domanda
Sto avendo un problema con il calcolo differenza di tempo tra due fusi orari.
Se io sono in posizione A So che la latitudine e la longitudine e l'ora corrente. Vado in posizione B So che la latitudine e la longitudine e l'ora corrente.
Come calcolare la differenza di tempo tra i due punti attuali .. (in UTC)
Soluzione
In primo luogo ottenere un database o libreria che converte lat / lungo per ottenere il Paese e stato / provincia. Quindi utilizzare la classe NSTimeZone per recuperare il fuso orario per un determinato paese. È possibile acquistare tali banche dati provenienti da molti siti, vale a dire: http://www.ip2location.com/
Per fare la conversione effettiva si dovrebbe fare qualcosa di simile:
NSTimeZone *sourceTimeZone =
[NSTimeZone timeZoneWithAbbreviation: @"GMT"];
NSTimeZone *destinationTimeZone =
[NSTimeZone timeZoneWithAbbreviation: @"EST"];
NSInteger sourceSeconds =
[sourceTimeZone secondsFromGMTForDate:date];
NSInteger destinationSeconds =
[destinationTimeZone secondsFromGMTForDate:date];
NSTimeInterval interval = destinationSeconds - sourceSeconds;
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow