java中键盘输入的编解码问题
通过键盘输入中文,通过system.in.read读取,然后通过println函数将读取到的字符打印出来,在debug时,设置eclipse->debug configuration->argument->vmargument为
-Dfile.encoding=charset
-Dsun.io.unicode.encoding=charset
-Dsun.jnu.encoding=charset charset分别设为"UTF-16","UTF-8"等值,不论我设置的是什么值,输出的总是一样的,比如我输入中国,输出的值永远为:
e4b8ade59bbd
代码如下:
ch = System.in.read();
System.out.println(Integer.toHexString(ch)+"*****");
请问键盘输入的编码到底是依据什么编码来的,是否可以设置?我用的系统是macOS sierra版本10.12