修改jvm的默认编码

    JVM的默认编码,如果没有设置的话是根据系统来的,中文系统的话默认的编码一般是GBK,在我们使用OutputStringWriter保存文件时,如果没有指定编码格式那文件使用的就是默认的编码,这个时候如果使用其它编码读取文件就可能出现乱码。

import java.nio.charset.Charset;

public class Test {
	public static void main(String[] args) {
        //输出默认编码
        System.out.println( Charset.defaultCharset());
    }
}

     设置JVM的编码有以下方式

  1. 在系统的环境变量中添加一个变量,名为: JAVA_TOOL_OPTIONS, 值为:-Dfile.encoding=UTF-8
  2. 在运行java程序的时候指定参数java -Dfile.encoding=UTF-8 Test

注意:第2种方式每次运行时都需要指定

ps:如果是web工程,可以在catalina.bat的最前面加入set JAVA_OPTS=-Dfile.encoding=UTF-8;设置了编码后使用java -help可能会出现乱码,这个时候可以使用-Duser.language=en设置一下语言

 

 

你可能感兴趣的:(java)