我们尝试在Windows上使用Java和UTF-8。应用程序在控制台上写入日志,并且我们希望为日志使用UTF-8,因为我们的应用程序具有国际化日志。Java,UTF-8和Windows控制台
可以使用-Dfile.encoding=UTF-8
作为JVM的参数来配置JVM,以便生成UTF-8。它工作正常,但在Windows控制台上的输出是乱码。
然后,我们可以将控制台的代码页设置为65001(chcp 65001
),但在这种情况下,.bat
文件不起作用。这意味着,当我们尝试通过我们的脚本(名为start.bat)启动我们的应用程序时,绝对没有任何反应。该命令返回简单:
C:\Application> chcp 65001
Activated code page: 65001
C:\Application> start.bat
C:\Application>
但是,如果没有chcp 65001
,是没有问题的,并且应用程序可以启动。
对此有何暗示?
什么是文件start.bat的文本编码? – johnstok 2008-11-05 14:40:57