如何在Wp7中找到地址的纬度和经度
ex:
如果我给出位置名称:“纽约”,那么我想得到它的纬度和经度。
提前致谢
答案 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