离线解析IP地址"/>
使用IP2region离线解析IP地址
采用ip2region 来解析IP地址
1.下载离线的IP库
地址:
下载ip2region.db
2.导入Maven依赖
<dependency><groupId>org.lionsoul</groupId><artifactId>ip2region</artifactId><version>1.7.2</version>
</dependency>
3.编写解析IP工具类
默认的格式解析出来的是以’|’ 分割的,这里进行处理改成使用tab键进行分割
public class IpUtils {/*** 解析Ip地址工具类,传入IP地址,返回省、市、城市、运行商,以\t分割*/public static String parseIP(String ip) {String result = "";// 关联下载的id2region.db 离线库String dbFile = "E:\\stud\\IpParse\\ip2region\\data\\ip2region.db";try {DbSearcher search = new DbSearcher(new DbConfig(), dbFile);// 传入ip进行解析DataBlock dataBlock = search.btreeSearch(ip);// 获取解析后的数据 格式:国家|大区|省|市|运营商String region = dataBlock.getRegion();String replace = region.replace("|", ",");String[] splits = replace.split(",");if (splits.length == 5) {String country = splits[0];String province = splits[2];String city = splits[3];String operator = splits[4];// 拼接数据result = country + "\t" + province + "\t" + city + "\t" + operator;}return result;} catch (FileNotFoundException e) {e.printStackTrace();} catch (Exception e) {e.printStackTrace();}return result;}
}
4.工具类的调用
返回值detail即为我们解析后以\t拼接的信息
String detail = IpUtils.parseIP(ip);
更多推荐
使用IP2region离线解析IP地址
发布评论