zoukankan      html  css  js  c++  java
  • C#根据经纬度获取物理地址

    调用命名空间:

    using System.Net;
    using System.IO;
    using System.Xml;

    调用事例:

    private string GetAddress(string lng, string lat) 

    {

          try

                {

                    string url = @"http://api.map.baidu.com/geocoder/v2/?ak=oGdNg8wTEMEIsC0uzqqD3nq0&callback=renderReverse&location=" + lat + "," + lng + @"&output=xml&pois=1";

                    WebRequest request = WebRequest.Create(url);

                    request.Method = "POST";

                    XmlDocument xmlDoc = new XmlDocument();

                    string sendData = xmlDoc.InnerXml;

                    byte[] byteArray = Encoding.Default.GetBytes(sendData);

                    Stream dataStream = request.GetRequestStream();

                    dataStream.Write(byteArray, 0, byteArray.Length);

                    dataStream.Close();

                    WebResponse response = request.GetResponse();

                    dataStream = response.GetResponseStream();

                    StreamReader reader = new StreamReader(dataStream, System.Text.Encoding.GetEncoding("utf-8"));

                    string responseXml = reader.ReadToEnd();

                    XmlDocument xml = new XmlDocument();

                    xml.LoadXml(responseXml);

                    string status = xml.DocumentElement.SelectSingleNode("status").InnerText;                                         if (status == "0")

                    {

                        XmlNodeList nodes = xml.DocumentElement.GetElementsByTagName("formatted_address");

                        if (nodes.Count > 0)

                        {

                            return nodes[0].InnerText;

                        }

                        else

                             return "未获取到位置信息,错误码3";

                        }

                    else

                    {

                        return "未获取到位置信息,错误码1";

                    }

                }

                catch (System.Exception ex)

                {

                    return "未获取到位置信息,错误码" + ex + "";

                }

     }

    ---注意:

        当status=“0”但nodes[0].InnerText结果依然为null时,在网址上查看url是否可以得到数据。

  • 相关阅读:
    设计模式系列
    设计模式系列
    设计模式系列- 抽象工厂模式
    设计模式系列
    Python3 系列之 编程规范篇
    【ABAP系列】SAP ABAP BDC_OKCODE 解释
    【ABAP系列】SAP ABAP MIR7预制凭证BAPI
    【ABAP系列】SAP ABAP 的替代和校验
    【ABAP系列】SAP ABAP 开发中的SMARTFORMS 参数
    【ABAP系列】SAP ABAP 实现FTP的文件上传与下载
  • 原文地址:https://www.cnblogs.com/bingsying/p/7846724.html
Copyright © 2011-2022 走看看