首页 > 解决方案 > 在 geolite2 .mmdb 文件 (JAVA) 上按城市名称查询

问题描述

我正在使用 GeoLite2 通过 IP 地址获取我的 java 应用程序的位置。

我想从 GeoLite2-City.mmdb 文件中逐个城市获取国家/地区。

这是我的读者:

DatabaseReader reader = new DatabaseReader.Builder(dbFileStream).withCache(new CHMCache()).build();

我通过 IP 地址获取 CityResponse,如下所示:

 CityResponse cityResponse = reader.city(InetAddress.getByName("an IP address"));

但我想像这样按城市获取国家/地区名称:

String countryName = reader.getCountryByCity("Paris”);

有没有办法做到这一点?

标签: javageoipgeoip2geolite2

解决方案


这是不可能的。该数据库旨在通过 IP 地址进行查找。如果您需要以其他方式访问数据,我建议使用 MaxMind 提供的 CSV 文件。

此外,您可以尝试项目geonames.org及其java-api 库


推荐阅读