2011-09-18 194 views
2

我正在開發一個C#中的Winforms應用程序。將郵政編碼轉換爲一組座標的最佳方式是什麼,以便我可以在地圖上繪製它們?從PostCode獲取經度和緯度

感謝

+1

http://blogs.msdn.com/b/oldnewthing/archive/2010/04/22/10000406.aspx –

+0

您的郵編僅限於某個國家或地區嗎?如果不是,則需要將該國家添加到該郵編。對於實際的地理定位,您可以使用任何可用的地理編碼服務,包括Google,Yahoo,Bing。例如,看看這裏:http://msdn.microsoft.com/en-us/library/bb545004.aspx –

+0

它只是英國 – simon

回答

1

如果您的要求是針對較少數量的查詢並且您將擁有網絡連接,則可以使用Google Maps API搜索郵政編碼並檢索經緯度。但是,它確實會限制你的速度。有關使用Google進行此操作的更多信息,請參閱http://code.google.com/apis/maps/documentation/geocoding/。如果您願意,Bing地圖也可以使用。

- 更新以下澄清意見

對於剛剛英國,你可以在下載的CSV文件使用OS將opendata(http://www.ordnancesurvey.co.uk/oswebsite/products/os-opendata.html),它提供的座標的(http://en.wikipedia.org/wiki/Easting_and_northing)爲每一個英國郵政編碼。

+0

要從Eastings和Northings(OS座標)到Latitude/Longitude,請參閱http ://social.msdn.microsoft.com/Forums/en-SG/vemapcontroldev/thread/2c5498bb-998b-4c05-a6af-36af9d051a3d –

1

看看GeoCoding.NET,一個通用的.NET GeoCoding API。

通過這種方式,您可以將郵政編碼字符串傳遞給方法,並使用Google,Bing或Yahoo的地理定位API之一返回潛在匹配的集合:每個匹配可能都有與其相關的緯度和經度座標。

請記住,您可以在一天內對每個特定服務的請求數量有限制。