【发布时间】:2015-03-31 15:29:47
【问题描述】:
我想使用 java 程序运行一个批处理文件,当我双击 .bat 文件时,它要求我输入“D”,然后它在 C 驱动器中创建了一些文件夹,下面是 .bat 的内容文件:
xcopy "data" "C:\data" /S
xcopy "rapid" "C:\rapid" /S
subst x: /D
subst x: C:\
我的Java代码如下:
try {
//C:\Desktop\Speed\view_R36_WD_Release\RAPID\switchToLive.Bat
String cmds[] = {"C:\\Users\\608521747\\Desktop\\Speed\\view_R36_WD_Release\\RAPID\\switchToDev.bat"};
Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec(cmds);
process.getOutputStream().close();
InputStream inputStream = process.getInputStream();
InputStreamReader inputstreamreader = new InputStreamReader(inputStream);
BufferedReader bufferedrReader = new BufferedReader(inputstreamreader);
String strLine = "";
while ((strLine = bufferedrReader.readLine()) != null) {
System.out.println(strLine);
}
} catch (IOException ioException) {
ioException.printStackTrace();
}
它没有给我任何错误,但它既不要求我输入任何值也不创建任何文件夹。
我想知道我需要在 java 代码中做什么,以便它会要求我输入“D”,然后 .bat 文件应该继续正常流程。
感谢任何帮助。
【问题讨论】: