如何在wp7中找到一个地方的经纬度

时间:2013-02-05 12:08:20

标签: windows-phone-7 geolocation gps

如何在Wp7中找到地址的纬度和经度

ex:

如果我给出位置名称:“纽约”,那么我想得到它的纬度和经度。

提前致谢

3 个答案:

答案 0 :(得分:2)

WebClient webClient = new WebClient();
string xml = webClient.DownloadString("http://nominatim.openstreetmap.org/search?city=%22new%20york%22&format=xml");

答案 1 :(得分:2)

这应该有效:

反序列化json字符串的类

public class PlaceInfo
{
    public string place_id { get; set; }
    public string licence { get; set; }
    public string osm_type { get; set; }
    public string osm_id { get; set; }
    public List<string> boundingbox { get; set; }
    public string lat { get; set; }
    public string lon { get; set; }
    public string display_name { get; set; }
    public string @class { get; set; }
    public string type { get; set; }
    public double importance { get; set; }
    public string icon { get; set; }
}

这是从网站获取信息的代码: 格式是JSON,我使用的是c#

的json序列化器

使用System.Runtime.Serialization; 使用System.Runtime.Serialization.Json;

WebClient webClient = new WebClient();
string jsonString = webClient.DownloadString("http://nominatim.openstreetmap.org/search?city=%22new%20york%22&format=json");

//load into memorystream
using (var ms = new MemoryStream(Encoding.Unicode.GetBytes(jsonString)))
{
    //parse
    var ser = new DataContractJsonSerializer(typeof(PlaceInfo[]));
    PlaceInfo[] obj = (PlaceInfo[])ser.ReadObject(ms);
}

数组obj现在具有找到该名称的所有位置。例如jsut取第一个找到的地方obj [0] .lon和obj [0] .lat

答案 2 :(得分:1)

也许你可以使用openstreetmaps:

http://nominatim.openstreetmap.org/search?city=%22new%20york%22&format=json

http://nominatim.openstreetmap.org/search?city= “--- ---城市名” &安培; countrycodes = “--- --- COUNTRYCODE” &安培;极限= 2及格式= JSON

http://wiki.openstreetmap.org/wiki/Nominatim

你可以把结果作为json或xml