java Runtime exec 解决出乱码问题

679 阅读1分钟
Runtime.getRuntime().exec("cmd")

输入输出存在乱码问题。要用 gbk 编码读取命令行输出,但即使用 gbk 输入指令,也还是不行。cm 虽有参数 /A /U ,可以指定输出的编码格式,但无法指定输入格式,且即使设置,虽有变化,读取也不正确。

方法是用 ``` powershell


而不是cmd。

这样,输入输出全部都用默认的  utf8 编码即可,很方便。