如何在JAVA中制作Google Translate支持语言的HashMap?

时间:2016-12-25 17:32:01

标签: java api google-translate

我目前正在使用Google Translate API V2 google-translate-api-v2-java-core-0.52.jar

有没有办法获得支持的语言列表并将它们放入HashMap,其中key是语言名称,值是语言ISO Code。

实施例

HashMap<String, String> langs = new HashMap<String, String>;
langs.put("English", "en");

所以我需要在这个HashMap中支持所有支持的Google翻译语言。 我尝试使用Locale.getISOCountries()执行此操作,但我会在HashMap中获取所有语言,并且Google翻译不支持大多数语言。

1 个答案:

答案 0 :(得分:1)

public static void displaySupportedLanguages(PrintStream out, Optional<String> tgtLang) {
  Translate translate = createTranslateService();
  LanguageListOption target = LanguageListOption.targetLanguage(tgtLang.orElse("en"));
  List<Language> languages = translate.listSupportedLanguages(target);

  for (Language language : languages) {
    out.printf("Name: %s, Code: %s\n", language.getName(), language.getCode());
  }
}

参考:

  1. https://cloud.google.com/translate/docs/discovering-supported-languages
  2. https://translation.googleapis.com/language/translate/v2/languages?parameters
  3. 而且,根据这个jar文件的源代码,似乎方法Translator.languages(null)也可以做到。 (将null作为目标语言传递)