有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

控制台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控制台应用程序


共 (2) 个答案

  1. # 1 楼答案

    DOS下,更改另一个驱动器的路径时,必须先使用驱动器号,然后才能设置目录。这是因为每个驱动器都有自己的工作目录。您需要将C:添加到批处理文件中:

    C:
    cd c:\cmd\
    application.exe
    
  2. # 2 楼答案

    cd c:\cmd\
    c:
    application.exe
    

    试试这个