2010-09-12 14 views
6

¿Existe una buena manera de obtener información de zona horaria con información de horario de verano desde una coordenada lat/long o una dirección física?Geocodificación con información de zona horaria

He encontrado algunos servicios web que parecen ofrecer este servicio, pero no puedo decir qué tan confiables podrían ser, o si podrían desaparecer en algún momento. Necesito algo para mi aplicación que será a largo plazo.

¿Son estos servicios fiables y de larga duración? ¿Hay otras opciones mejores?

+0

Esta víctima: http://stackoverflow.com/questions/41504/timezone-lookup-from-latitude-longitude tiene al menos una más opción. No vota para cerrar debido a su énfasis en la confiabilidad a largo plazo. –

+0

Gracias @Pekka. Sí, mi énfasis es a largo plazo, pero es bueno ver a otros recomendar estos servicios. Parece que el servicio Geonames es probablemente el más establecido. – Tauren

+0

Duplicado de [¿Cómo obtener un huso horario desde una ubicación usando coordenadas de latitud y longitud?] (Http://stackoverflow.com/questions/16086962/how-to-get-a-time-zone-from-a-location -usando-latitud-y-longitud-coordenadas) –

Respuesta

1

He buscado durante mucho tiempo para encontrar una base de datos que podría alojar localmente para mapear las coordenadas lat + lon a una zona horaria (es decir, no hay dependencia de un servicio remoto). Esto es lo mejor que pude inventar.

Un mapa de zona horaria vectorizada está disponible aquí: http://georezo.net/jparis/Data/wrldtz_tab.htm. Esta es una base de datos de casi 2000 "regiones". Cada región está definida por un conjunto de polígonos en la superficie de la Tierra, y le dice en qué zona horaria se encuentra si se encuentra dentro de esa región.

Existen importantes inconvenientes:

  • No ha sido actualizado desde 2002.
  • Sólo se define polígonos sobre la tierra (si es mayor de agua, no se le considera estar en cualquier zona horaria)
  • No le proporciona los identificadores Olson para las zonas horarias, solo el nombre del país y el desplazamiento UTC (hora estándar).

La última limitación podría no ser un gran problema para usted: no hay tantas zonas horarias y tal vez pueda invertir el tiempo para asignar manualmente cada una a su nombre Olson (especialmente si solo le interesa un pequeño número de zonas horarias).

Para leer los archivos de datos que puede descargar del sitio web indicado anteriormente, deberá usar this library. Podría encontrar algún código de muestra si está interesado.

También menciona el uso de una dirección física (postal). Traducirlas a las coordenadas lat + lon es una pregunta aparte, y supongo que no puedes hacer un buen trabajo sin usar algún tipo de servicio en línea/remoto.

-Phil