源代码如下,我想要执行一个dos里的文件移动命令;
public class Test4 { public static void main(String[] args) {
Runtime rt = Runtime.getRuntime();
String command="cmd.exe/c start move e:\\\\aaa.txt e:\\\\bbb.txt";
try {
rt.exec(command);
} catch (Exception e) {
System.out.println("执行文件移动命令失败");
e.printStackTrace();
}
}
}结果老是给我抛一个异常:
java.io.IOException: CreateProcess: cmd.exe\c start move e:\\aaa.txt e:\\bbb.txt error=2
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at qq.Test4.main(Test4.java:9)请问哪位大侠能够给我解释一下啊?
public class Test4 { public static void main(String[] args) {
Runtime rt = Runtime.getRuntime();
String command="cmd.exe/c start move e:\\\\aaa.txt e:\\\\bbb.txt";
try {
rt.exec(command);
} catch (Exception e) {
System.out.println("执行文件移动命令失败");
e.printStackTrace();
}
}
}结果老是给我抛一个异常:
java.io.IOException: CreateProcess: cmd.exe\c start move e:\\aaa.txt e:\\bbb.txt error=2
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at qq.Test4.main(Test4.java:9)请问哪位大侠能够给我解释一下啊?
怎么这么多次转义,而且/c和cmd.exe连在一起?简单一点:
String command="cmd.exe /c start move e:\\aaa.txt e:\\bbb.txt";
public class Test4 {
public static void main(String[] args){
Runtime rt = Runtime.getRuntime();
String command = "cmd.exe /c start move c:/cmd.txt d:/b.txt";
try{
rt.exec(command);
}catch(Exception e){
System.out.println("fail");
e.printStackTrace();
}
}}这样也可以·