获取utf-8地理编码谷歌地图API街道地址在asp

本文关键字:街道 地址 asp API 谷歌地图 utf-8 编码 获取 | 更新日期: 2023-09-27 18:28:05

我是asp.net(c#)的初学者但是我需要从纬度&经度位置所以我需要用fa语言检索地址,我们已经将language=fa添加到字符串映射地址中。但它找回了那个奇怪的角色这是我的代码:

public static void RetrieveFormatedAddress(string lat1, string lng1)
{
    static string baseUri = "http://maps.googleapis.com/maps/api/geocode/xml?latlng={0},{1}&language=fa&sensor=true";
    string requestUri = string.Format(baseUri, lat1, lng1);
    using (WebClient wc = new WebClient())
    {
        wc.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadStringCompleted);
        wc.DownloadStringAsync(new Uri(requestUri));
    }
}
static void wc_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
    var xmlElm = XElement.Parse(e.Result);
    var status = (from elm in xmlElm.Descendants()
                  where elm.Name == "status"
                  select elm).FirstOrDefault();
    if (status.Value.ToLower() == "ok")
    {
        var res = (from elm in xmlElm.Descendants()
                   where elm.Name == "formatted_address"
                   select elm).FirstOrDefault();
        Console.WriteLine(res.Value);
        Console.WriteLine(res);
        GetSMS getsms1 = new GetSMS();
        getsms1.retrunAdress(res.Value);
    }
    else
    {
        Console.WriteLine("error");
    }
}

谷歌还给了我:

    طھظ‡ط±ط§ظ†طŒ طھظ‡ط±ط§ظ†طŒ ط®غŒط§ط¨ط§ظ† ط§ظ…غŒط±غŒ ط·ط§ط¦ظ…ظ‡طŒ ط§غŒط±ط§ظ†

如何从谷歌获取"波斯语"地址?感谢

获取utf-8地理编码谷歌地图API街道地址在asp

在网上搜索了两天,测试了很多不同的代码,终于找到了解决方案。我的代码是正确的,但只需要在web客户端对象上设置UTF-8 Unicode。所以我的代码将更改为:

  using (WebClient wc = new WebClient())
    {
       wc.Encoding = Encoding.UTF8;
       wc.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadStringCompleted);
       wc.DownloadStringAsync(new Uri(requestUri));
    }

这也可以在UTF-8中使用。