Android Studio - “用于编码UTF-8的无法映射的字符”

时间:2014-12-17 12:17:07

标签: android eclipse windows macos character-encoding

在使用Android Studio V1.0切换到Mac OS X Yosemite之前,所有人都在使用Eclipse中的Eclipse工作正常且花花公子。我将该项目导入为非Android Studio项目,因为它是使用Eclipse创建的,导入很顺利,然后Android Studio开始在整个文件中显示此错误:

error : unmappable character for encoding UTF-8

编辑:直接将文件打开到Sublime Text中,外国字符中没有错误。在ST&#39}的控制台中使用view.encoding(),我能够看到文件编码,即Western (Windows 1252)。我转到Android Studio并将文件的编码更改为windows-1252,现在它正常工作!
有没有办法告诉Android Studio读取windows-1252中的文件,然后将它们转换为UTF-8 以保持标准编码格式?

3 个答案:

答案 0 :(得分:50)

将以下内容添加到build.gradle可以解决问题:

android {
    ...
    compileOptions.encoding = 'ISO-8859-1'

答案 1 :(得分:4)

我也遇到过这个问题。 我的问题的原因是我将一个未编码UTF-8的文件从Eclipse复制到Android Studio。 这个问题的解决方案是:

  1. 确保Android Studio的默认文件编码为UTF-8: 设置 - >文件编码,将属性文件的IDE编码,项目编码和默认编码设置为UTF-8。
  2. 将您的错误文件复制到txt文件并删除错误文件。
  3. 创建一个新文件,其名称与删除的文件相同。
  4. 将内容从txt文件复制到新文件。

答案 2 :(得分:1)

对于Android Studio 2.2,您必须在项目的gradle文件中添加编译选项:

android {     ...      compileOptions {         编码“ISO-8859-1”         sourceCompatibility JavaVersion.VERSION_1_7         targetCompatibility JavaVersion.VERSION_1_7     } }