Windows CMD java -jar 输出中文乱码

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

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

1. 查看当前编码:

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

chcp

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

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

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

chcp 65001

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

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

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

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

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

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

import java.io.OutputStreamWriter;
import java.io.PrintStream;
import java.nio.charset.StandardCharsets;

public class Main {
    public static void main(String[] args) {
        System.setOut(new PrintStream(new OutputStreamWriter(System.out, StandardCharsets.UTF_8), true));
        System.setErr(new PrintStream(new OutputStreamWriter(System.err, StandardCharsets.UTF_8), true));
        // 你的代码
    }
}

方法四:使用 PowerShell 代替 CMD

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

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

评论已关闭