Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 文本编码在执行时无法正常工作_Java_Intellij Idea_Encoding_Utf 8 - Fatal编程技术网

Java 文本编码在执行时无法正常工作

Java 文本编码在执行时无法正常工作,java,intellij-idea,encoding,utf-8,Java,Intellij Idea,Encoding,Utf 8,我在IntelliJ IDEA(15.0.1适用于Windows x64)中使用Java(1.8.031)完成了一段时间的当前项目,在该项目中,我使用了一些带有特殊字符(例如“ó”)的文本行。到目前为止,它一直在工作,没有任何问题,但今天它不会 简而言之,我有这样一行代码: System.out.println("ó"); 已输出此(预期): 今天,具有相同源代码的输出是(意外的): 代码文件以UTF-8编码,并相应地设置编辑器。好了,我什么都没变 我已经创建了一个全新的项目来测试它,它工作正

我在IntelliJ IDEA(15.0.1适用于Windows x64)中使用Java(1.8.031)完成了一段时间的当前项目,在该项目中,我使用了一些带有特殊字符(例如“ó”)的文本行。到目前为止,它一直在工作,没有任何问题,但今天它不会

简而言之,我有这样一行代码:

System.out.println("ó");
已输出此(预期):

今天,具有相同源代码的输出是(意外的):

代码文件以UTF-8编码,并相应地设置编辑器。好了,我什么都没变

我已经创建了一个全新的项目来测试它,它工作正常,所以它可能与我的项目相关


知道如何解决这个问题吗?

当javac编译器和编辑器在编码上出现分歧时,就会出现这种情况。它可能是某个组件,比如样式检查器/版本控制,它将文档放在核心中,并将“更正”的版本写入磁盘。但是,首先要查找您的配置:在使用maven时,验证pom.xml并进行比较。是否存在
-Dfile.encoding=
System.setProperty(“file.encoding”、“…”)
System.getProperty(“file.encoding”)
返回“UTF-8”。如果这也是java源文本的代码,那么一切都可以。然后,您可能会在控制台中看到“ó”,在Windows上运行时,通常不使用UTF-8,而是使用一些单字节编码,如Windows-1252。然后,操作系统就无法处理这个问题。也许昨天有人添加了一个--Dfile.encoding?我是这个项目上唯一的程序员,我没有添加这样的行。它不仅影响控制台,而且影响我用于系统路径的字符串文本,这才是真正的问题。源文本也是UTF-8(使用IDEA和Notepad++检查)。如果我将文件重新编码为ANSI,它就像一个符咒,尽管这显然不是我想要的。这里发生了一些奇怪的事情…这可能是一个依赖于数据的错误:现在调用了一些设置file.encoding的方法。库/IDE更新。IDE设置通过某个功能键重置(可怕)。有两个控制台:IDEA和Windows cmd下。也许你今天看到的是cmd,昨天看到的是IDEA的控制台?搜索IDEA的编码设置
ó
ó