• 获取ip地址以及获取城市等信息


    class Program
        {
            static void Main(string[] args)
            {
                string ip = GetIP();
                if (ip != null)
                {
                    string city = GetCityByIP(ip);
                    Console.WriteLine("解析的城市名称为 = " + city);
                }
                Console.ReadKey();
            }
    
            static string GetIP()
            {
                string result = GetWebContent("http://city.ip138.com/ip2city.asp");
                if (result != null)
                {
                    int start = result.IndexOf("[") + 1;
                    int end = result.LastIndexOf("]");
                    string ip = result.Substring(start, end - start);//找出ip
                    return ip;
                }
                return null;
            }
    
            static string GetCityByIP(string ip)
            {

            string url = "http://ip.taobao.com/service/getIpInfo.php?ip=" + ip;
            string content = GetWebContent(url);
            if (content != null)
            {
              JsonData res = JsonMapper.ToObject(content);
              if (res != null && res.Count == 2)
              {
                int status = Convert.ToInt32(res["code"].ToString());
                if (status == 0)
                {
                  JsonData js = res["data"];
                  string city = js["city"].ToString();
                  return city;
                }
              }
            }
            return null;

            }

      static string GetWebContent(string url)
            {
                try
                {
                    System.Net.WebClient wc = new System.Net.WebClient();
                    wc.Credentials = System.Net.CredentialCache.DefaultCredentials;
                    return wc.DownloadString(url);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("GetWebContent 发生了错误:" + ex.Message);
                    return null;
                }
            }
        }
  • 相关阅读:
    dubbo开发中使用到的一些服务配置方式
    jedis连接池详解(Redis)
    《Java线程池》:任务拒绝策略
    BlockingQueue(阻塞队列)详解
    洛谷 P3275 BZOJ 2330 [SCOI2011]糖果
    LaTeX的简单使用方法
    洛谷 P1131 BZOJ 1060 [ZJOI2007]时态同步
    洛谷 P2587 BZOJ 1034 [ZJOI2008]泡泡堂
    苦酒入喉心作痛,红酒入鹅鹅想哭——震惊!勒索病毒想哭靠wine感染了Ubuntu16.04
    洛谷 P2144 BZOJ 1003 [FJOI2007]轮状病毒
  • 原文地址:https://www.cnblogs.com/MrZivChu/p/ipcity.html
Copyright © 2020-2023  润新知