【问题标题】:Running command prompt command in English以英文运行命令提示符命令
【发布时间】:2017-01-27 10:23:10
【问题描述】:

我想在 Windows 上运行一个命令行程序,这里是代码。

    public static String runcmd(String cmd) throws IOException {
    ProcessBuilder builder = new ProcessBuilder(cmd);
    builder.redirectErrorStream(true);
    Process p = builder.start();
    BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
    String line;
    StringBuilder sb = new StringBuilder();
    while (true) {
        line = r.readLine();
        if (line == null)
            break;
        sb.append(line + "%SKIPLINE%");
    }
    System.out.println(sb.toString());
    return sb.toString();
}

一切正常,除了它以中文打印输出,因为我的 Windows 语言设置为中文。有没有办法让它输出英文?

【问题讨论】:

  • 在 linux 中就像使用processBuilder.environment().put("LANG", "en_US.UTF-8")为进程设置 LANG 环境变量一样简单
  • @Svetlin Zarev 我使用的是 Windows,但它在 Windows D 上不起作用:
  • 查看此链接:stackoverflow.com/questions/2469435/… 你想找到一种方法,可以将程序中的语言环境临时设置为英语。
  • @SandySimonton 谢谢!我现在开始工作了。
  • @RandomGuy:没问题,有机会请采纳我的回答!

标签: java command-prompt


【解决方案1】:

试试这个:

https://wandersick.blogspot.com/p/change-non-english-command-line.html

或者 执行

chcp 437 在 cmd 提示符中。

例如:

C:\Users\javaserv> chcp 437
Active code page: 437

希望对你有帮助!

【讨论】:

  • 在引用之前最好显示一些代码或注释,这样即使链接被删除,仍然可以阅读。
【解决方案2】:

查看此链接:how to detect operating system language (locale) from java code

你想找到一种方法,可以将程序中的语言环境临时设置为英语。

【讨论】:

    猜你喜欢
    • 2010-11-30
    • 2019-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-01
    • 2017-04-22
    相关资源
    最近更新 更多