2015-04-08 93 views
1

我有一個android應用程序在Android工作室從eclipse導入。 除了android模塊之外,該項目還包含java模塊。字符從子模塊字符集錯誤在Android工作室

java模塊處理charsets錯誤,android模塊確實正確。 我在一個活動以及在一個子模塊類實現此方法:

public String getUmlaute() { 
    return "öäüßÖÄÜ " + Charset.defaultCharset(); 
} 

submoduleClass.getUmlaute() + "--" + getUmlaute(); 

返回

öäüßÖÄÜ java.nio.charset.CharsetICU[UTF-8] -- öäüßÖÄÜ java.nio.charset.CharsetICU[UTF-8] 

所有的文件被UTF-8編碼的原因的。 Android Studio以及記事本++證實了這一點以及這些字母的正確性。

的Android工作室設置Android Studio Settings

我都嘗試,清除子項目默認編碼並將其設置爲UTF-8。沒有不同。

這裏怎麼回事?有沒有編碼選項丟失?

+0

好的,我想創建一個bug報告。我創建了一個新的Android項目,在其中創建了一個Java模塊,這個應用程序顯示了相同的行爲。 –

+0

Bugreport:https://code.google.com/p/android/issues/detail?id=163547 –

+0

這個問題在我的linux機器上不存在。不幸的是,我不得不在工作中使用窗戶。任何想法如何解決這個問題? –

回答

2

終於解決了,但我們修了。 我加

compileJava.options.encoding = 'UTF-8' 

到每一個Java的build.gradle文件。

我加

android { 
    compileOptions.encoding = "UTF-8" 

到Android的build.gradle文件。

在「設置」 - >文件編碼中,我將Java模塊的默認編碼設置爲windows-1252。

這樣做。 這些文件仍然utf-8

也許它的Windows文件系統問題。順便說一句,這是NTFS。