【发布时间】:2016-10-14 18:39:52
【问题描述】:
我有一个以 ISO-8859-1 编码的项目(我无法更改的历史选择)。
我将我的 IDE IntelliJ 14.1.1 Ultimate 设置为 ISO-8859-1: My encoding setting
(我的代码在 ISO-8859-1 中专门设置的文件夹中)
encoding.xml 看起来不错:
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" defaultCharsetForPropertiesFiles="windows-1252">
<file url="file://$PROJECT_DIR$" charset="ISO-8859-1" />
<file url="file://$PROJECT_DIR$/mydir" charset="ISO-8859-1" />
<file url="file://$PROJECT_DIR$/mydir/...ASpecificJavaFileThatIveTroubleWith.java" charset="ISO-8859-1" />
<file url="PROJECT" charset="ISO-8859-1" />
</component>
</project>
我的 .idea 没有在 git 上提交,因为它不是标准 IDE。
但是当我处理某个文件时,intelliJ 在保存时会不断将编码切换为 UTF-8。我多次将文件转换为 ISO-8859-1,用另一个编辑器打开它以确保没有 UTF-8 字符剩余。但是尽管我努力了,经过几次编辑,文件还是自动切换到了 UTF-8。
我重新启动IDE几次,没有变化。
有什么提示吗?
【问题讨论】:
-
只是好奇,但该文件是否包含在两个字符集中具有不同编码的任何字符? IE。 ISO-8859-1 代码大于
0x7F的任何东西? -
你读过他们的blog吗?可能和vcs有关。
-
(手头没有 IntelliJ。)javac 编译器也必须是 ISO-8859-1。或者项目特定设置被覆盖。对于 *.java,我几乎会将项目移植到 UTF-8(例如使用 native2ascii)。
-
@Jim Garrison :是的,我在一些 cmets 和日志中有一些 0xE9 和 0xE0。
-
@John Smith :我读过那个页面,但我没有自动检测复选框
标签: java intellij-idea encoding utf-8