Java如何调用可执行文件和批处理命令.docVIP

  • 5
  • 0
  • 约4.14千字
  • 约 4页
  • 2019-08-10 发布于江西
  • 举报

Java如何调用可执行文件和批处理命令.doc

Java如何调用可执行文件和批处理命令 篇一 Java 是种跨平台的语言,我们经常碰到需要通过Java调用windows下某些程序。有些第三方厂商如(ANT),也提供了调用windows下可执行程序的方法,但我们往往需要调用一些批处理命令。而java 却不提供。 ??? 这里,我采用一种变相的调用方法,使得Java 能调用批处理命令。如果您有更好的方法,希望您能告诉我。 前期准备[/B] ??? Quick Batch File (De)Compiler ??? 将任何BAT、CMD批处理脚本编译为EXE文件! 开始 1.??? 运行exe 文件 Java JDK里已经提供了调用的方法,不在累赘,代码如下。 ??? try { ??????? String command = notepad; ??????? Process child = Runtime.getRuntime().exec(command); ??? } catch (IOException e) { ??? ??? } ??? 2.??? 运行 bat(批处理) 文件 ??? Java 对批处理文件还不支持。刚开始一直在研究 Java???? 如何调用批处理文件,始终找不到解决方法。后来只好绕过批处理,考虑如何将批处理转换为exe可执行文件。然后再通过Java调用可执行文件。 ??? 在Google上搜索一下,找到Quick Batch File (De)Compiler,可以将任何BAT、CMD批处理脚本编译为EXE文件。使用了一下,果然可以。 ??? Quick Batch File (De)Compiler使用非常简单: ??? Quickbfc 文件名.bat 文件名.exe(将批处理命令编译为可执行文件) ??? quickbfd 文件名.exe 文件名.bat(将可执行文件反编译为批处理命令) ??????? 然后,我们再按第一种方法通过Java 调用,即可。 篇二 由于java 是跨平台的,有时候我们需要用到操作系统的一些信息,为了方便期间,干脆就直接调用操作系统的命令来实现,比如查看IP地址,MAC地址等。不过两个在jdk6里面已经有了,不过以前都是用调用dos命令,然后获取输出的办法来做的,比如: 完整代码: Java代码 package cmd; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; class StreamDrainer implements Runnable { private InputStream ins; public StreamDrainer(InputStream ins) { this.ins = ins; } public void run() { try { BufferedReader reader = new BufferedReader( new InputStreamReader(ins)); String line = null; while ((line = reader.readLine()) != null) { System.out.println(line); } } catch (Exception e) { e.printStackTrace(); } } } public class TestRunCmd { public static void main(String[] args) { String[] cmd = new String[] { cmd.exe, /C, wmic process get name }; try { Process process = Runtime.getRuntime().exec(cmd); new Thread(new StreamD

文档评论(0)

1亿VIP精品文档

相关文档