解决方案:
1.打开IDE,点击Help -> Edit custom VM options...
,在文件的末尾加上
-Dfile:econding=UTF-8
-Dconsole.encoding=UTF-8
image.png
记得重启IDE
2.设置项目以及文件的编码:
点击File -> Settings...
, 点击Editor
展开配置选项,接着点击 File Encodings
,设置三处编码,如下图:
一般这样设置就ok了,但是因为我的是kotlin的项目,并且是通过gradle构建的项目,我发现在java目录下写的代码中文输出还是乱码。
先说下解决方案:
image.png
在build.gradle.kts文件最后添加如下图所示代码,然后删除项目的build
目录,重新运行程序即可解决。
项目目录结构
image.png我在kotlin目录下写的main函数中调用java目录下Person类的实例方法打印输出到控制台时还是乱码;
但是kotlin目下的包含中文字符的方法,输出到控制台时不会乱码
image.png
接着我查看了下工程build
目录下的Person.class
文件,我发现文件时存在乱码的;
所以我就猜测是gradle编译java目录的代码采用的不是UTF8编码,因此就需要设置下编译java代码文件的编码即可。
kotlin代码:
tasks.withType(JavaCompile::class.java){
options.encoding = "UTF-8"
}
java代码:
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}
网友评论