控制台Java runtine。执行官:不会改变路径
java:
public static void startCmd(String path)
{
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(path);
BufferedReader input = new BufferedReader(new InputStreamReader(pr.getInputStream(), "cp852"));
String line = null;
// redirection output to console
while((line = input.readLine()) != null) {
System.out.println(line);
}
System.out.println("Error code: " + pr.waitFor());
}
public static void main(String[] args) {
startCmd("c:\\run.bat");
}
快跑。蝙蝠:
cd c:\cmd\
application.exe
控制台中的输出:
D:\WORKSPACE\TEST>cd c:\cmd\
D:\WORKSPACE\TEST>application.exe // path should be changed from D:\WORKSPACE\TEST> to c:\cmd>
Error code: 0
为什么cd c:\cmd\
命令没有传递给java控制台应用程序
# 1 楼答案
在
DOS
下,更改另一个驱动器的路径时,必须先使用驱动器号,然后才能设置目录。这是因为每个驱动器都有自己的工作目录。您需要将C:
添加到批处理文件中:# 2 楼答案
试试这个