Java 如何使用国家名称获取区域名称(亚洲/卡拉奇)?

Java 如何使用国家名称获取区域名称(亚洲/卡拉奇)?,java,android-studio,kotlin,Java,Android Studio,Kotlin,我搜索了大约2到3个小时,但没有找到我要的。 示例:如果我传递国家名称:印度及其返回区名称Asia/Kolkata。 巴基斯坦将返回区域名称亚洲/卡拉奇 public String getCode(String countryName) { String[] countriesCode = Locale.getISOCountries(); for (int i=0;i<countriesCode.length;i++) { loca

我搜索了大约2到3个小时,但没有找到我要的。 示例:如果我传递国家名称:印度及其返回区名称Asia/Kolkata。 巴基斯坦将返回区域名称亚洲/卡拉奇

public String getCode(String countryName) {
        String[] countriesCode = Locale.getISOCountries();
        for (int i=0;i<countriesCode.length;i++) {
            locale = new Locale("", countriesCode[i]);
            if (countryName.equalsIgnoreCase(locale.getDisplayCountry())) {
                TimeZone timeZone=TimeZone.getTimeZone(countriesCode[i]);
                return timeZone.getID();// I wants to return here like Asia/Karachi
            }
        }
        return "";
    }
    
  
公共字符串getCode(字符串countryName){
字符串[]countriesCode=Locale.getISOCountries();

对于(int i=0;i关于有多个区域的国家如何?如果有多个区域,我会根据首都选择区域。但是如果你知道回答我的问题,请回答并感谢你的回答。你的意思是你想要带有该国首都名称的时区ID?你知道这并不总是存在的,对吗?例如例如,中国没有
亚洲/北京
,但中国有很多时区,包括
亚洲/乌鲁木齐
亚洲/重庆
亚洲/香港
亚洲/上海
。好的,有没有办法在选定国家的模拟时钟中设置时间?没有,仅仅一个国家的信息不够。您在最不需要一个城市,或者更小的城市。有多个区域的国家如何?如果有多个区域,我会根据首都选择区域。但是如果你知道回答我的问题,请回答并感谢你的回答。你的意思是你想要带有该国首都名称的时区ID?你不需要这并不总是存在的,对吗?例如,中国没有
亚洲/北京
,但中国有很多时区,包括
亚洲/乌鲁木齐
亚洲/重庆
亚洲/香港
亚洲/上海
。好的,有没有办法在选定国家的模拟时钟中设置时间?没有,朱一个国家没有足够的信息。你至少需要一个城市,或者比这个更小的地方。