java 依据IP地址获取对应的地域信息ITeye - 亚美娱乐

java 依据IP地址获取对应的地域信息ITeye

2019年03月13日12时05分34秒 | 作者: 宛南 | 标签: 获取,地域,信息 | 浏览: 1897

String result = null; String url_str = "http://ip.taobao.com/service/getIpInfo.php?ip=" + ipAddress; try { URL url = new URL(url_str); BufferedReader in = new BufferedReader(new InputStreamReader( url.openStream())); String inLine = in.readLine(); in.close(); if (("0").equals(getValueByJsonStr(inLine,p1))) { result = unicode2String(getValueByJsonStr(inLine,p2)+getValueByJsonStr(inLine,p3)+getValueByJsonStr(inLine,p4)+getValueByJsonStr(inLine,p5)); } else { result = "获取不到该IP的地域信息"; } catch (Exception e) { result = "依据IP地址[" + ipAddress + "]获取地域信息的时分发作反常"; return result; private static Pattern p1 = Pattern.compile("(? =\"code\")(?:\\s*:\\s*)(?:\"?)(.*?)(?:\"?\\s*)(?:,)"); private static Pattern p2 = Pattern.compile("(? =\"country\")(?:\\s*:\\s*)(?:\"?)(.*?)(?:\"?\\s*)(?:,)"); private static Pattern p3 = Pattern.compile("(? =\"region\")(?:\\s*:\\s*)(?:\"?)(.*?)(?:\"?\\s*)(?:,)"); private static Pattern p4 = Pattern.compile("(? =\"city\")(?:\\s*:\\s*)(?:\"?)(.*?)(?:\"?\\s*)(?:,)"); private static Pattern p5 = Pattern.compile("(? =\"isp\")(?:\\s*:\\s*)(?:\"?)(.*?)(?:\"?\\s*)(?:,)"); private static String getValueByJsonStr(String jsonStr,Pattern p){ Matcher m = p.matcher(jsonStr); if(m.find()){ return m.group(1).toString(); return null;
版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表亚美娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章

阅读排行

  • 1

    Redis的耐久化机制ITeye

    耐久,方法,内存
  • 2
  • 3

    记一次线程池的运用ITeye

    线程,运用,行列
  • 4
  • 5
  • 6
  • 7
  • 8

    Digester 解析XMLITeye

    元素,参数,解析
  • 9

    运用文件体系ITeye

    目录,读取,是否
  • 10