Windows CMD java -jar 输出中文乱码

在 Windows 的命令提示符(cmd)中运行 java -jar 命令时,如果输出中文出现乱码,通常是由于字符编码设置不正确造成的。以下是解决此问题的一些方法:

方法一:设置命令提示符的编码

1. 查看当前编码:

打开CMD.exe命令行窗口,默认情况下,编码为936(简体中文 GBK编码)。
打开命令提示符并输入以下命令查看当前编码:

  1. chcp

你可能会看到输出 Active code page: 437 或类似的信息,这意味着当前的编码不是 UTF-8。

2. 将编码设置为 UTF-8:

输入以下命令将编码设置为 UTF-8:

  1. chcp 65001

然后再运行你的 java -jar 命令。

chcp 65001 就是换成UTF-8代码页
chcp 936 可以换回默认的GBK

方法二:设置 Java 控制台输出编码

  1. 在运行 java -jar 命令时,添加 JVM 参数以设置控制台输出编码为 UTF-8:
  1. java -Dfile.encoding=UTF-8 -jar your-jar-file.jar

方法三:修改 Java 程序的编码设置

如果你有源码,可以在程序中设置编码。例如,设置 System.outSystem.err 的编码:

  1. import java.io.OutputStreamWriter;
  2. import java.io.PrintStream;
  3. import java.nio.charset.StandardCharsets;
  4. public class Main {
  5. public static void main(String[] args) {
  6. System.setOut(new PrintStream(new OutputStreamWriter(System.out, StandardCharsets.UTF_8), true));
  7. System.setErr(new PrintStream(new OutputStreamWriter(System.err, StandardCharsets.UTF_8), true));
  8. // 你的代码
  9. }
  10. }

方法四:使用 PowerShell 代替 CMD

在某些情况下,PowerShell 处理编码会比 CMD 更好。你可以尝试使用 PowerShell 运行你的命令:

  1. java -jar your-jar-file.jar

总结

尝试以上方法可以解决 Windows 命令提示符中 java -jar 输出中文乱码的问题。希望这些方法对你有所帮助!


» 本文链接:https://blog.apires.cn/archives/2255.html
» 转载请注明来源:Java地带  » 《Windows CMD java -jar 输出中文乱码》

» 本文章为Java地带整理创作,欢迎转载!转载请注明本文地址,谢谢!
» 部分内容收集整理自网络,如有侵权请联系我删除!

» 订阅本站:https://blog.apires.cn/feed/

标签: Java, Windows

评论已关闭