java程序中如何运行exe脚本文件呢?

欣喜 Java经验 发布时间:2025-03-12 10:55:42 阅读数:14995 1
下文笔者讲述java程序中运行exe脚本文件的方法分享,如下所示

java运行exe脚本文件的实现思路

Java程序中运行`.exe`脚本文件(或任何可执行文件)
可使用`java.lang.ProcessBuilder`
   或 `java.lang.Runtime.getRuntime().exec()`方法运行可执行文件

使用`ProcessBuilder`

`ProcessBuilder`提供更灵活的方式来启动和管理进程
   它允许你设置工作目录、环境变量,并且可以更方便地处理输入输出流。

 例 
 
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class RunExeWithProcessBuilder {
    public static void main(String[] args) {
        // 指定要运行的 .exe 文件路径
        String exePath = "C:\\path\\to\\your\\script.exe";

        // 创建 ProcessBuilder 实例
        ProcessBuilder processBuilder = new ProcessBuilder(exePath);

        // 设置工作目录(可选)
        // processBuilder.directory(new File("C:\\path\\to\\working\\directory"));

        try {
            // 启动进程
            Process process = processBuilder.start();

            // 读取进程的输出
            BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }

            // 等待进程结束并获取退出码
            int exitCode = process.waitFor();
            System.out.println("Process exited with code " + exitCode);
        } catch (IOException | InterruptedException e) {
            e.printStackTrace();
        }
    }
}
代码说明 
1.指定可执行文件路径: 
    String exePath = "C:\\path\\to\\your\\script.exe";
 
2.创建`ProcessBuilder`实例:
    ProcessBuilder processBuilder = new ProcessBuilder(exePath);
 
3.设置工作目录(可选) 
    processBuilder.directory(new File("C:\\path\\to\\working\\directory"));
  
4.启动进程: 
    Process process = processBuilder.start();
 
5.读取进程输出: 
    BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
    String line;
    while ((line = reader.readLine()) != null) {
        System.out.println(line);
    } 
	
6.等待进程结束并获取退出码: 
    int exitCode = process.waitFor();
    System.out.println("Process exited with code " + exitCode);

使用`Runtime.getRuntime().exec()`

`Runtime.getRuntime().exec()`
   另一种启动进程的方法
    但此方法不如`ProcessBuilder`灵活

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class RunExeWithRuntime {
    public static void main(String[] args) {
        // 指定要运行的 .exe 文件路径
        String exePath = "C:\\path\\to\\your\\script.exe";

        try {
            // 启动进程
            Process process = Runtime.getRuntime().exec(exePath);

            // 读取进程的输出
            BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }

            // 等待进程结束并获取退出码
            int exitCode = process.waitFor();
            System.out.println("Process exited with code " + exitCode);
        } catch (IOException | InterruptedException e) {
            e.printStackTrace();
        }
    }
}

代码说明

1.指定可执行文件路径:
    String exePath = "C:\\path\\to\\your\\script.exe";

2.启动进程:
    Process process = Runtime.getRuntime().exec(exePath);

3.读取进程输出
    BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
    String line;
    while ((line = reader.readLine()) != null) {
        System.out.println(line);
    }

4.等待进程结束并获取退出码:
    int exitCode = process.waitFor();
    System.out.println("Process exited with code " + exitCode);
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202503/17417509148372.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者