Java 从E164电话号码格式获取国家/地区名称

Java 从E164电话号码格式获取国家/地区名称,java,Java,我有以下两个字符串 String e164; // E164 Number Format String countryCode; // E.g. '+1' for US 有没有办法从这些字符串中获取ISO国家代码?我的目标是从中获得国家名称,我想到的解决方案首先需要ISO代码,如下所示: Locale l = new Locale("", isoCode); System.out.println(l.getDisplayCountry(), isoCode)

我有以下两个字符串

String e164;        // E164 Number Format
String countryCode; // E.g. '+1' for US 
有没有办法从这些字符串中获取ISO国家代码?我的目标是从中获得
国家名称
,我想到的解决方案首先需要ISO代码,如下所示:

Locale l = new Locale("", isoCode);
System.out.println(l.getDisplayCountry(), isoCode);

也许有一个更优雅的解决方案不需要ISO代码?

谷歌的LibPhonenumber提供离线和免费的数据库。只需在他们的库中使用
phonenumberofrinegeocoder
。我认为如果你只是从数字中寻找一个国家,这将很好

但如果你想要最新的信息,最好使用像Twilio这样的在线查询提供商