zoukankan      html  css  js  c++  java
  • C# 根据IP获取省市


    /// <summary>

            /// 根据IP获取省市

            /// </summary>

            public void GetAddressByIp()

            {

                string ip = "115.193.217.249";

                string PostUrl = "http://int.dpool.sina.com.cn/iplookup/iplookup.php?ip=" + ip;

                string res = GetDataByPost(PostUrl);//该条请求返回的数据为:res=1 115.193.210.0 115.194.201.255 中国 浙江 杭州 电信


                string[] arr = getAreaInfoList(res);

            }


            /// <summary>

            /// Post请求数据

            /// </summary>

            /// <param name="url"></param>

            /// <returns></returns>

            public string GetDataByPost(string url)

            {

                HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);

                string s = "anything";

                byte[] requestBytes = System.Text.Encoding.ASCII.GetBytes(s);

                req.Method = "POST";

                req.ContentType = "application/x-www-form-urlencoded";

                req.ContentLength = requestBytes.Length;

                Stream requestStream = req.GetRequestStream();

                requestStream.Write(requestBytes, 0, requestBytes.Length);

                requestStream.Close();


                HttpWebResponse res = (HttpWebResponse)req.GetResponse();

                StreamReader sr = new StreamReader(res.GetResponseStream(), System.Text.Encoding.Default);

                string backstr = sr.ReadToEnd();

                sr.Close();

                res.Close();

                return backstr;

            }


            /// <summary>

            /// 处理所要的数据

            /// </summary>

            /// <param name="ip"></param>

            /// <returns></returns>

            public static string[] getAreaInfoList(string ipData)

            {

                //1 115.193.210.0 115.194.201.255 中国 浙江 杭州 电信

                string[] areaArr = new string[10];

                string[] newAreaArr = new string[2];

                try

                {

                    //取所要的数据,这里只取省市

                    areaArr = ipData.Split(' ');

                    newAreaArr[0] = areaArr[4];//省

                    newAreaArr[1] = areaArr[5];//市

                }

                catch (Exception e)

                {

                    // TODO: handle exception

                }

                return newAreaArr;

            }

  • 相关阅读:
    学习《MYSQL》课程,日期2017.4.25-2017.4.30
    Netty学习笔记
    WebSocket学习
    Class 泛型
    SAX解析与DOM解析
    HashMap和HashTable的区别
    SQL语句整理
    观察者模式学习
    状态模式学习
    策略模式学习
  • 原文地址:https://www.cnblogs.com/hefeilong/p/5714925.html
Copyright © 2011-2022 走看看