调用本地程序的基本原理:
1. 获取本地程序的路径。例如:
String splayer = "D:\\Program Files\\SPlayer\\splayer.exe";
2.指定目标文件的路径。例如:
String mp4 = "D:\\test\\swf\\video\\mp4\\dq\\1370021267350\\1370021267350.mp4";
3.将参数写入Java提供的方法中。例如:
ProcessBuilder pro = new ProcessBuilder(splayer, mp4);
或者
Process pro = Runtime.getRuntime().exec(splayer, null, mp4);
4.执行这个方法。例如:
Process pro = proc.start();
5.等待执行的过程。例如:
pro.waitFor();
6.执行过程中产生的数据。例如:
执行中读入的数据:pro.getInputStream();
执行中写出的数据:pro.getOutputStream();
执行中出错的数据:pro.getErroStream();
7.执行结束销毁进程。例如:
pro.destory();
综上所述,就是Java中ProcessBuilder和Process所做的工作。其实,Runtime.exec()可以做与ProcessBuilder类同样的工作。为什么会有两个??
在执行中,第6步,容易产生阻塞,原因是执行过程中产生的缓冲内容没有输出。
相关链接:http://my.oschina.net/sub/blog/134436
Java 调用本地程序
最新推荐文章于 2024-03-25 10:30:49 发布