我想在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语言设置为中文。有没有办法用英语输出?
答案 0 :(得分:1)
点击此链接:how to detect operating system language (locale) from java code
您想要找到的是一种将程序中的语言环境暂时设置为英语的方法。
答案 1 :(得分:0)
试试这个:
https://wandersick.blogspot.com/p/change-non-english-command-line.html
或者 执行
chcp 437 在cmd提示符下。
例如:
C:\用户\ javaserv> chcp 437 活动代码页:437
希望它有所帮助!