2008-11-04 5 views
49

मेरे पास शहरों, राज्यों/प्रांतों और देशों की एक सूची है और मुझे अपने संबंधित टाइमज़ोन आसानी से ढूंढने की ज़रूरत है। विशेष रूप से, मुझे यह जानने की ज़रूरत है कि वे कौन सा विंडोज टाइमज़ोन मैप करते हैं। अब तक यह एक कठिन प्रक्रिया रही है, क्योंकि किसी शहर को किसी चीज़ को पास करने और टाइमज़ोन वापस पाने का कोई आसान तरीका नहीं है (एक टाइमज़ोन ऑफसेट होता है और टाइमज़ोन डेलाइट सेविंग टाइम का समर्थन करता है या नहीं)।मुझे समय-समय पर शहरों की मैपिंग सूची की आवश्यकता है- इसे पाने का सबसे अच्छा तरीका?

वर्तमान प्रवाह http://www.batchgeocode.com उपयोग करने के लिए शहर के अक्षांश/देशांतर (जो वास्तव में एक याहू सेवा कॉल) और फिर http://www.EarthTools.org फोन एक समयक्षेत्र पत्र है, जो करने के लिए एक ऑफसेट नक्शे प्राप्त करने के लिए प्राप्त करने के लिए है। समस्या यह है कि याहू सेवा कभी-कभी खराब रेखांश/अक्षांश लौटाती है, और earthtools.org को डीएसटी जानकारी के बारे में बहुत कुछ नहीं पता है, इसलिए सही टाइमज़ोन आईडी पर मैपिंग एक कठिन मैनुअल प्रक्रिया है।

मैं ऐसा पहला व्यक्ति नहीं हो सकता जिसने ऐसा किया है- क्या किसी को बेहतर तरीके से पता है, या कुछ सूची है जहां मुझे आवश्यकता है?

धन्यवाद।

+0

क्या आप व्याख्या कर सकते हैं कि लेट/लॉन के साथ क्या समस्या है? – wonderchook

उत्तर

36

दिलचस्प सवाल! ये अन्य तीन एसओ पोस्ट (41504, 55901 और 237023) कुछ लीड का उल्लेख करें। Olson database है (विवरण के लिए Wikipedia entry देखें), लेकिन यह अधिक एल्गोरिदमिक/प्रोग्रामेटिक दिखता है (उदाहरण के लिए यदि आप काउंटी नाम जानते हैं, तो Indiana में कुछ काउंटी के लिए इसके लिए एक नियम है)।

मैं EarthTools को देख करने की कोशिश की लेकिन यह failedSt.Pierre/Miquelon, अच्छा परीक्षण मामलों में से एक के लिए (-3: 00 -3 बल्कि: पास के न्यूफाउंडलैंड जो क्या EarthTools कहते है के लिए 30)।

कुछ आशाजनक विकल्प: worldtimeengine.com में एक नि: शुल्क इंटरैक्टिव संस्करण और एक एपीआई है जो सस्ती (5000 पाउंड प्रति ब्रिटिश पाउंड) प्रतीत होता है, लेकिन एपीआई केवल इनपुट के रूप में लेट, लंबे प्रश्नों को कवर करता है (इनपुट के रूप में स्थान नहीं, जो कुछ है इंटरैक्टिव संस्करण है)।

बेस्ट नेतृत्व: मैं geonames.org जो लगता है कि यह है कि आप इस्तेमाल कर सकते हैं एक अच्छा अमीर एपीआई है पर देखने चाहते हैं, और वे दोनों एक नि: शुल्क (धीमा) संस्करण, और बेहतर प्रदर्शन के लिए एक वाणिज्यिक संस्करण है।

पेज। यहाँ कुछ अच्छा परीक्षण मामलों (worldtimezone.com और Wikipedia's list of timezones से, map of time zones भी उदाहरण है) कर रहे हैं:

  • कराकस, वेनेजुएला (-4: 30)
  • Gander, न्यूफाउंडलैंड (-3: 30)
  • तेहरान , ईरान (+3: 30)
  • काबुल, अफगानिस्तान (4: 30)
  • काठमांडू, नेपाल (+5: 45)
  • यांगून, म्यांमार (+6: 30)
  • चौधरी एथम द्वीप, न्यूजीलैंड (+12: 45)
  • ईस्टर द्वीप (-6)
  • सेंटपियरे और मिकेलॉन (-3)
  • स्टेनली, फ़ॉकलैंड द्वीप (-4)
  • Evansville, इंडियाना (-6 = मध्य)
  • ओंटारियो, ओरेगन (-7 = माउंटेन)
+19

geonames.org सभी ज्ञात शहरों और उनके ओल्सन टाइमज़ोन के डेटा डंप (देश द्वारा) प्रदान करता है। इसे करने का सबसे अच्छा तरीका नीचे हाथ। http://download.geonames.org/export/dump/ –

+0

यह भी देखें [यह समुदाय विकी प्रविष्टि] (http://stackoverflow.com/q/16086962/634824) –

+0

@skylarsutton सेकेंड किया गया। एक SQL तालिका में geonames के डेटा को लोड करना और इसे किसी भी तरह से टुकड़ा करना बहुत आसान है। –

0

मैं कर सकते हैं अपने वर्तमान वर्कफ़्लो के दूसरे भाग में मदद करें। मैंने एक जावा लाइब्रेरी लिखी है जो लेट/लांग के टाइमज़ोन को मैप करती है, जहां डेटाबेस को स्रोत कोड में एन्कोड किया जाता है।

स्रोत कोड मूल रूप से यदि बयानों का एक बड़ा पेड़ है: यदि (lat> = -33.0) अगर (lng < -151.5) ... और ... और इसी तरह। यह सिर्फ एक वर्ग है। तो यदि आप सी # का उपयोग करते हैं तो यह बंदरगाह के लिए छोटा होगा।

http://www.edval.biz/mapping-lat-lng-s-to-timezones

यह 22km करने के लिए सही है।

+1

मुझे उम्मीद है कि जब भी सरकार समय क्षेत्र अपडेट करने का निर्णय लेती है तो आप स्रोत कोड को अपडेट करने की योजना बनाते हैं। –

+0

यह कितनी बार होता है? –

+2

अक्सर बहुत बारिश। http://www.timeanddate.com/news/time/ –

1

हम नेट सी # MVC का उपयोग करें और हम समय-क्षेत्रविंडोज की एक सूची की जरूरत प्रत्येक देश के लिए।

ताकि प्रत्येक पंजीकरण करने वाले उपयोगकर्ता के लिए हम स्वचालित रूप से टाइमज़ोन सेट कर सकें।

अधिकांश ऑनलाइन डेटाबेस आईएएनए टाइमज़ोन प्रदान करते हैं और किसी विशिष्ट देश को मानचित्र करना मुश्किल है।

NodaTime का उपयोग करके हम एक जेसन बनाने में कामयाब रहे जो निम्नलिखित प्रविष्टियों को सूचीबद्ध करता है।

CountryName 
2LetterIsoCountryCode 
3LetterIsoCountryCode 
IANATimezones 
WindowsTimezones 

आप उत्पन्न JSON here डाउनलोड कर सकते हैं।

2

moment-timezone टाइमज़ोन गणना के लिए एक जावास्क्रिप्ट लाइब्रेरी है।

उनके सभी टाइमज़ोन डेटा लिंकिंग देशों, टाइमज़ोम और ऑफ़सेट सभी available in json format हैं।

+0

मेरे लिए अच्छा काम किया। – Remy

संबंधित मुद्दे