首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从java中的in 3166-1 alpha-2国家代码中获得国家名称?

如何从java中的in 3166-1 alpha-2国家代码中获得国家名称?
EN

Stack Overflow用户
提问于 2021-09-28 13:30:29
回答 2查看 1K关注 0票数 0

在API响应中,我将从服务器获得ISOα-2国家代码,但我需要将ISOα-2国家代码转换为国家名称。我正在使用Java 8。

EN

回答 2

Stack Overflow用户

发布于 2021-10-11 16:24:47

使用下面的代码,我们可以从Java8语言环境中获得所有国家的ISO3代码和ISO2代码,以及国家名称。

代码语言:javascript
复制
public static void main(String[] args) throws Exception {   
  String[] isoCountries = Locale.getISOCountries();
    for (String country : isoCountries) {
        Locale locale = new Locale("en", country);
        String iso = locale.getISO3Country();
        String code = locale.getCountry();
        String name = locale.getDisplayCountry();
        System.out.println(iso + " " + code + " " + name);
    }
}

您还可以创建一个查找表映射,以便在ISO代码之间进行转换。因为我需要在iso3和iso2之间进行转换,所以按照。

代码语言:javascript
复制
String[] isoCountries = Locale.getISOCountries();
    Map<String, String> countriesMapping = new HashMap<String, String>();
    for (String country : isoCountries) {
        Locale locale = new Locale("en", country);
        String iso = locale.getISO3Country();
        String code = locale.getCountry();
        String name = locale.getDisplayCountry();
        countriesMapping.put(iso, code);
    }
票数 1
EN

Stack Overflow用户

发布于 2021-09-28 15:05:47

试着看看这个问题的答案:Is there an open source java enum of ISO 3166-1 country codes

您应该能够添加一个库到您的应用程序,让您获得一个国家的名称通过代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69362699

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档