How can i get the country code from a latitude longitude position?
I know that there are many geocoding services available, but they don\'t meed my requirement becau
Given the number of countries (polygons) in the world, you may want to subdivide the set of country polygons to do a rough filter first (e.g., if the point is in the western and northern hemispheres, only need to check North American, Central American, and Carribean countries. That may give you a speed improvement.
Also, keep in mind that many countries consist of multiple polygons, just keep that in mind as you code.
I haven't used any of these sources for country boundary data, but checkout: http://geocommons.com/overlays/33578 and http://geospatial.edublogs.org/2010/06/29/world-country-boundary-files/
I assume you want the ISO 3166-1 alpha-2 country code (vs. the FIPS 10=4 which is being phased out by Dec. 2012). There are 248 countries, territories and dependencies listed by ISO. ViennaMike's approach by doing a quick filter to reduce to checking by continent sounds like a good performance approach.
You will want to use the countries shapefile to know which country the lat/lng is within (ie., check if point is within a polygon).
There are a lot of free sources (but may have commerical licensing restrictions). Here's another source from the open source project (openstreetmap)
http://downloads.cloudmade.com/
Andrew, The Team at OpenGeoCode.Org