Java调用Bat
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter; public class Test3
{
static final String path = "D:\\develop\\test.bat"; public static void main(String[] args)
throws IOException, InterruptedException
{
printJava();
createBat();
Process p = null;
File f = new File("d:");
p = Runtime.getRuntime().exec(new String[] { "cmd", "/c", path },null,f);
p.waitFor();
System.out.print(p.exitValue());
printf(p.getInputStream());
} static void printf(InputStream out) throws IOException
{
String line = null;
BufferedReader reader = new BufferedReader(
new InputStreamReader(out, "gbk"));
while ((line = reader.readLine()) != null)
{
System.out.println(line);
}
} static void createBat() throws IOException
{
File file = new File(path);
if (file.exists())
{
file.delete();
}
file.createNewFile();
PrintWriter pw = new PrintWriter(file);
pw.println("echo start");
pw.println("pwd");
pw.println("cd %JAVA_HOME%");
pw.println("cd ..");
pw.println("cd jre");
pw.println("pwd");
pw.println("ls");
pw.println("javac Test.java");
pw.println("clear");
pw.println("for /L %%i in (0,1,2) do start java Test");
pw.flush();
pw.close();
} static void printJava() throws IOException
{
String home = System.getProperty("java.home");
System.out.print(home);
File dir = new File(home);
File file = new File(dir,"Test.java");
if(file.exists())
file.delete();
file.createNewFile();
PrintWriter pw = new PrintWriter(file);
pw.println("public class Test");
pw.println("{");
pw.println("public static void main(String[] args)");
pw.println("{");
pw.println("System.out.println(\"hello world\");");
pw.println("int i = 0;");
pw.println("while(i++ < 100000) System.out.println(\"hello world\");");
pw.println("}");
pw.println("}");
pw.flush();
pw.close();
}
}
Java调用Bat的更多相关文章
- Windows下Java调用BAT批处理不弹出cmd窗口
常规Windows下Java调用BAT方式肯定会弹出cmd窗口 Runtime.getRuntime().exec("cmd.exe /C start D:\\test.bat") ...
- bat文件【java调用】
Runtime.getRuntime().exec("cmd /c del c:\\a.doc"); //Runtime.getRuntime().exec("not ...
- java 调用windows bat脚本
当我们需要在java程序中调用外部程序,我们可用通过Runtime.exec()调用来完成. The class java.lang.Runtime features a static method ...
- java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊
java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊 java 调用 C# 类库搞定,可以调用任何类及方法,很简单,非常爽啊 总体分三步走: 一.准备一个 C# 类库 (d ...
- Java调用webservice接口方法
java调用webservice接口 webservice的 发布一般都是使用WSDL(web service descriptive langu ...
- 有关java调用批处理文件
1 例子 java调用批处理文件 public class RunJarBat { public static void runJarBat() { // 调用控制台 Runtime rt = Run ...
- JAVA:调用cmd指令(支持多次手工输入)
JDK开发环境:1.8 package com.le.tool; import java.io.BufferedReader; import java.io.File; import java.io. ...
- EasyDSS高性能RTMP、HLS(m3u8)、HTTP-FLV、RTSP流媒体服务器解决方案之Nodejs调用bat或sh脚本
关于EasyDSS流媒体服务器 EasyDSS商用流媒体服务器解决方案是一套集流媒体点播.转码与管理.直播.录像.检索.时移回看于一体的一套完整的商用流媒体服务器解决方案,EasyDSS高性能RTMP ...
- Java调用WebService方法总结(7)--CXF调用WebService
CXF = Celtix + XFire,继承了Celtix和XFire两大开源项目的精华,是一个开源的,全功能的,容易使用的WebService框架.文中所使用到的软件版本:Java 1.8.0_1 ...
随机推荐
- 使用struts框架后的404错误
访问jsp界面后出现404错误,我开始以为是因为struts没有配置好,在网上找了很多解决方法, 试了一遍,无效, 最后在参考书上看到“struts2推荐把所有的视图界面存放在WEB-INF目录下,这 ...
- 关于凑数问题的dfs
https://www.nowcoder.com/acm/contest/42/F 首先由于是单一解问题,所以使用返回值类型为bool的dfs 然后为了保证dfs的效率性,应该把加数dfs放在前面,不 ...
- ES6必知必会 (一)—— 变量声明和结构赋值
本文章属于个人对es6一些比较常用的语法的总结归纳,其主要参考阮一峰大神的<a href="http://es6.ruanyifeng.com//">ECMAScrip ...
- 干了2个月java开发最深的体会
综上为JQuery中ajax的操作,感觉使用多了,和form表单的处理还是非常相似的,只不过实现的功能不一样罢了.学习编程,其实就是学习对数据的流转处理,也即是程序的运行流程,如何从前台获取,传输到服 ...
- task optimization
Requirements: Tasks have Dependencies Running the task in Multi thread Links http://en.wikipedia.org ...
- js 数组方法比较
js 数组方法比较 table th:first-of-type { width: 80px; } table th:nth-of-type(2) { width: 120px; } table th ...
- python3 获取int最大值
python2 中获取int最大值 import sys i = sys.maxint print i 但是在python3中,报错: AttributeError: module 'sys' has ...
- Angular 4 组件间的通信
一.输入属性(父组件与子组件通信) 1. 创建工程 ng new demo1 2.创建order组件 ng g component order 3. 在order组件里定义输入属性 order组件的h ...
- linux下的pd
东西叫OpenSystemArchitect 地址在http://www.codebydesign.com/SystemArchitect 运行之前,先sudo apt-get install lib ...
- bzoj1212 L语言
Description 标点符号的出现晚于文字的出现,所以以前的语言都是没有标点的.现在你要处理的就是一段没有标点的文章. 一段文章T是由若干小写字母构成.一个单词W也是由若干小写字母构成.一个字典D ...