2017-03-14 95 views
-1

我有一个服务,它将语言显示名称作为响应的一部分。我想检索语言代码,以便可以将输出文件应用于国际化。从语言显示名称返回语言代码的Java API

Expected input : English - United States 
Output : en_US 
+1

您可以在[可用区域设置]环路(https://docs.oracle.com/javase/8/docs/api/java/ util/Locale.html#getAvailableLocales--)并查找匹配项。 – Holger

+1

请参阅此问题的答案 - http://stackoverflow.com/questions/14155049/iso2-country-code-from-country-name –

回答

1

您可能会使用类似的东西:

Optional<Locale> locale = Arrays.stream(Locale.getAvailableLocales()) 
     .filter(l -> 
       l.getDisplayLanguage().equals("English") && 
       l.getDisplayCountry().equals("United States") 
     ).findAny(); 

locale.ifPresent(System.out::println); 
相关问题