[英]javac does not output unicode on command line
看来javac没有使用终端的字符编码。
您可以使用标志为JVM指定字符编码:
java -Dfile.encoding=UTF-8 ...
(或其他编码)
Javac只是Java程序的薄包装。 您可以使用-J
标志将参数直接传递到其JVM。 所以:
javac -J-Dfile.encoding=UTF-8 ...
您可以通过运行了解当前的(默认)编码
System.getProperty("file.encoding")
并且您可以使用此属性更改默认编码。
对于Windows,通常为cp1252
,
长话短说,来自IBM KB的队列:
在内部,Java虚拟机(JVM)始终使用Unicode数据进行操作。 但是,所有传入或传出JVM的数据都采用与file.encoding属性匹配的格式。 读入JVM的数据将从file.encoding转换为Unicode,从JVM发出的数据也将从Unicode转换为file.encoding。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.