Pregunta

guardo las fechas y horas en mi tienda CoreData y necesidad de presentar con precisión a los usuarios el tiempo que entró en un principio. El problema es que si entraban 04:00 en la costa este, a continuación, busque más tarde en el tiempo registrado en la costa oeste, aparece como 01:00, ya que el iPhone se traduce tiempos universales a los tiempos locales. Lo necesito para mostrar 4:00 -. Probablemente 04:00 (+ 3h00)

Antes de ir y reestructurar mi modelo de datos básicos, Quiero estar seguro de que no hay manera de obtener el NSTimeZone que estaba activa en la creación de tiempo de un objeto NSDate almacenado. ¿Esta ahí? Si no es así, ninguna recomendación mejor forma de obtener NSTimeZone durante la creación de mí mismo? Un NSNumber que representa el tiempo de creación NSTimeZone diferencia horaria de GMT?

Gracias.

¿Fue útil?

Solución

As you've discovered, NSDate represents a universal point in time and does not include specific time zone information.

I'd suggest instead of storing the offset, store the NSTimeZone's name property. Then you can use +[NSTimeZone timeZoneWithName:] to get the time zone and thence convert it to local time. This gives you maximum flexibility in how you display the information to the user.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top