1.如何执行非系统注册的命令比如Windows的dir
请使用命令 "cmd /c dir"
其他情况类似
2.如何打开带空格的外部文件或文件夹
最基本的打开外部文件的方式 "cmd /c start 文件",若文件名有空格,则会出现错误,请使用以下方式解决
String[] cmd = new String[5];
cmd[0] = "cmd";
cmd[1] = "/c";
cmd[2] = "start";
cmd[3] = " ";
cmd[4] = "E://kk sd//www.txt";
Process process = Runtime.getRuntime().exec(cmd);
或
;Process process = Runtime.getRuntime().exec("cmd /c start /"/" /"E://kk sd//www.txt/"");
因为按找文档说明 start 命令之后首先是[title],再是[filepath],所以将title设置为 " "
3.调用外部程序来打开一个相应的文件
比如我们要使用Editplus来打开一个远程机器上的文件,可以这样
Runtime.getRuntime().exec("D://EditPlus 2//EditPlus.exe"+" "+172.16.1.6//server1//SystemErr.log)
即
Runtime.getRuntime().exec("外部程序位置"+" "+"要打开的文件").
以此方式可以忽略空格的问题
4.截取控制台的信息.
使用JAVA输入流的方式.
Runtime.getRuntime().exec(..)获取的Process
;Process pro =
Runtime.getRuntime().exec(..);
InputStreamReader isr = new InputStreamReader (pro.getInputStream());
//todo 使用输入流进行操作就可以了.