JAVA如何调用exe或者批处理文件
/**
* JavaExec.java version 1.0 Feb 22, 2010
*/
import java.lang.Runtime;
import java.lang.Process;
import java.io.InputStreamReader;
import java.lang.Exception;
import java.io.*;
public class JavaExec {
/**
* @param args
* @author Eric Yang
* @
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
JavaExec javaExec = new JavaExec();
javaExec.testProcess();
}
public void testProcess()
{
try
{
String home="c:/process";
String command = "bfimport.bat -U yq -P qq -x bfimport_71.xml -p";
String[] cmd = new String[] { "cmd.exe", " ", "bfimport.bat" };
File dir = new File(home);
//Process process = Runtime.getRuntime().exec(command,null, dir);
Process process = Runtime.getRuntime().exec(command);
/*TestInputStream errorStream = new TestInputStream(process
.getErrorStream());
errorStream.start();*/
InputStream inputStream = process.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
String line = null;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
//int exitValue = process.waitFor();
//System.out.println("Return Value:" + exitValue);
process.getOutputStream().close();
}
catch(IOException e)
{
System.out.println("IOException ");
修改其中的command就可以了
上面的例子确实可以获得一些输出,但是有很多情况也无法获取,再参考很多实例之后,下面的例子最强大,几乎可以捕获所有类型的命令行输出。
/**
* JavaExec.java version 1.0 Feb 22, 2010
*/
import java.lang.Runtime;
import java.lang.Process;
import java.io.InputStreamReader;
import java.lang.Exception;
相关文档:
在JDK1.5之前,对高质量Java多线程并发程序设计时,为防止程序崩掉等现象的出现,比如使用wait()、notify()和synchronized等,需要考虑性能、死锁、公平性、资源管理以及如何避免线程安全性方面带来的危害等诸多因素,通常会采用一些较为复杂的安全策略,加重了程序员的开发负担。在J ......
今晚在逛CSDN的时候发现了,有人用java写了生成myeclipse注册码的代码,所以就抄录了下来。 o(∩_∩)o 哈哈
package gggg;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class MyEclipseGen {
private static final ......
import java.text.Format;
import java.text.SimpleDateFormat;
File file = new File("a.txt");
long time = file.lastModified();
Date d = new Date(time);
Format simpleFormat = new SimpleDateFormat("E dd MMM yyyy hh:mm:ss a");
String dateString = simpleFormat.format(d);
System.err.println(file.getN ......
线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类。
Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
M ......
运行 bat(批处理) 文件
(不确定,我自己的简单demo是java可以执行批处理文件的)
Java 对批处理文件还不支持。刚开始一直在研究 Java 如何调用批处理文件,始终找不到解决方法。后来只好绕过批处理,考虑如何将批处理转换为exe可执行文件。然后再通过J ......