2011-07-01 14 views
0

私のテキストをデバイス言語に翻訳したいと思います。アンドロイドでテキストをデバイス言語に翻訳する

ので、私はコード

String InputString="My text"; 
    String OutputString = null; 

    Language fromLanguage = Language.ENGLISH; 
    Language toLanguage = Language.valueOf(Locale.getDefault().getDisplayLanguage().toUpperCase()); 

    try { 

     Translate.setHttpReferrer("http://android-er.blogspot.com/"); 
     OutputString = Translate.execute(InputString, 
       fromLanguage, toLanguage); 

    } 
catch (Exception e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
     OutputString = InputString; 
    } 

    return OutputString; 

の下にしようとしたデバイスの言語が英語であれば、それはうまく実行しますが、私は英語以外の任意の言語を選択した場合、私はそれが

java.lang.IllegalArgumentException: FRANÇAIS is not a constant in the enum type class com.google.api.translate.Language 

ないFRANCAISを示し、その後、他の言語に変更選択された言語のIllegalArgumentExceptionが表示されます。

私は何が間違っているのか、テキストをデバイス言語に翻訳する別の方法があるか教えてください。事前

おかげ

敬具

+0

あなたはRES /値の文字列値を格納する場合は、言語directly.Butを翻訳することはできません-frとsetlangaugeをネイティブロケール設定でフランス語にするには、自動的に値-frの文字列値を取ります。 – Sando

答えて

関連する問題