运行时在Android项目的一个模块中编码错误

时间:2017-06-02 08:43:41

标签: java android windows android-studio

我工作的两位同事有一个我以前从未遇到的奇怪问题,我无法弄清楚如何解决。

我们有一个包含3个模块的Android项目。主要是app,它取决于数据模块,这取决于核心模块。现在在核心模块中,我们有一个类,它有一些使用非Ascii字符的硬编码字符串。在IDE内部,所有内容都正确显示(图1),文件以UTF-8编码打开,并按设置(图2)设置。但是,一旦我运行此应用程序,运行时对这些字符串的编码将更改为ANSI(图1)。例如,我有一个字母“ł”,十六进制是“c5 82”,但在运行时它被分成1个字节,每个用ANSI编码,这导致c5 =Å和82 =,你也可以注意到图片。 http://www.alanwood.net/demos/ansi.html

有两件奇怪的事情:

1)我有相同的笔记本电脑型号,安装了相同的Windows,我没有任何问题

2)甚至更奇怪(图3),当我将复制此类并将其移动到app或数据等其他模块时,编码在运行时突然变得完美。

由于上面的第二点我不能为我的生活弄清楚什么是错的。如果是系统问题或java JRE或JDK问题,它应该影响所有文件,无论项目或模块如何,但在这种情况并非如此,因为如果我将文件移动到其他模块,一切都很完美。这也不是一个项目问题,因为我没有和他们一样的问题,我也有Windows机器(相同的操作系统版本)。

我从头开始重新安装了Android Studio,删除了所有缓存/以前的设置并再次克隆了repo ...没有帮助。

Windows 10,使用Android Studio 2.3.2

enter image description here enter image description here enter image description here

0 个答案:

没有答案