我正在使用数据绑定(bind)实用程序。每当我在 xml 文件中使用“_i”时,绑定(bind)类中与它相对应的字符是“\ufffd”,即 windows-1254 编码中的大写 i(“ı”)。这是土耳其字母表中正确的大写字母,但我不想使用本地大写字母,因为它会产生以下错误:
error: illegal character: '\ufffd'
我查看了与非法字符错误相关的问题,其中大多数建议删除非法字符并重写。但是就我而言,我无法更改该文件,或者更改没有意义,因为它是在重建过程中重新生成的。
row_program_item.xml
<LinearLayout
android:id="@+id/program_item_linear"
android:layout_width="match_parent"
android:layout_height="wrap_content">
...
</LinearLayout>
RowProgramItemBinding.java
...
@NonNull
public final LinearLayout program�temLinear;
最佳答案
正如 @Joachim Sauer 所说,这是一个错误。目前,解决方案是更改javac的语言以避免本地化。就我而言,它有助于将以下行添加到 gradle.properties。
org.gradle.jvmargs=-Duser.country=TR -Duser.language=en
kotlin.compiler.execution.strategy=in-process
kotlin.daemon.jvm.options=-Duser.country=TR -Duser.language=en
关于java - Android 数据绑定(bind)生成非 UTF-8 编码的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60545001/