java调用不在同一目录下的bat
2015-11-19 18:51
309 查看
描述场景:Java Web项目在E:\eclipse j2ee工作空间下,而需要调用的批处理文件bat在C:\upload下,也就是跨盘符调用,代码如下:
第一种方法是在Java文件中进行盘符切换:
网上也有很多调用,但需要保证web项目目录和调用目录在同一文件夹下,否则不能调用成功,网友代码如下:
第二种方法是在bat文件中进行盘符切换,代码如下:
![](http://img.blog.csdn.net/20151119193054839?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
通过上述两种方法就阔以在任意地方对bat文件进行调用喽,搞了一下午,跑完步回来就搞定了,哇哈哈
第一种方法是在Java文件中进行盘符切换:
import java.io.File; import java.io.IOException; public class batTest { public static void main(String[] args) throws InterruptedException{ System.out.println("hehehehhe"); //方案一: Runtime rt = Runtime.getRuntime(); Process ps = null; try { ps = rt.exec("cmd.exe /C start apkpichuli.bat",null,new File("C:\\upload"));// 加上/b就没有黑框 http://www.jb51.net/article/37367.htm } catch (IOException e1) { e1.printStackTrace(); } ps.waitFor(); int i = ps.exitValue(); if (i == 0) { System.out.println("执行完成.") ; } else { System.out.println("执行失败.") ; } //方案二: try { Runtime.getRuntime().exec("cmd.exe /C start apkpichuli.bat",null,new File("C:\\upload")); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
网上也有很多调用,但需要保证web项目目录和调用目录在同一文件夹下,否则不能调用成功,网友代码如下:
import java.io.IOException; import java.io.InputStream; public class InvokeBat2 { public void runbat(String batName) { String cmd = "cmd /c start C:\\upload\\"+ batName + ".bat";// pass try { Process ps = Runtime.getRuntime().exec(cmd); ps.waitFor(); } catch (IOException ioe) { ioe.printStackTrace(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("child thread done"); } public static void main(String[] args) { InvokeBat2 test1 = new InvokeBat2(); test1.runbat("apkpichuli"); System.out.println("main thread"); } }
第二种方法是在bat文件中进行盘符切换,代码如下:
通过上述两种方法就阔以在任意地方对bat文件进行调用喽,搞了一下午,跑完步回来就搞定了,哇哈哈
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/proud.gif)
相关文章推荐
- Spring并发访问的线程安全性问题
- javaweb学习总结(二十五)——jsp简单标签开发(一)
- java学习笔记03
- 简单项目开发之一(springmvc+log4j)
- spring里面怎么取容器里面的常量值
- java中的TreeSet集合
- 简单项目开发之一(springmvc+filter)
- Eclipse常见错误
- java学习笔记2
- MyEclipse 2015 stable 2.0 下载 破解激活
- java二分查找方法
- struts框架设计
- java插入排序方法
- java选择排序方法
- java冒泡排序方法
- JavaSE__Jdbc关闭
- java 每日习题(六)从文件收集数据记录到mysql
- Java中利用socket实现简单的服务端与客户端的通信(入门级)
- idea类似eclipse鼠标提示java api信息
- Java获取操作系统信息和Java版本信息