当前位置:首页 > Java

java如何运行cmd

2026-04-09 02:27:44Java

运行 CMD 命令的方法

在 Java 中可以通过 RuntimeProcessBuilder 来执行 CMD 命令,以下是具体实现方式:

java如何运行cmd

使用 Runtime 执行 CMD 命令

public class RunCMD {
    public static void main(String[] args) {
        try {
            // 执行 CMD 命令
            Process process = Runtime.getRuntime().exec("cmd /c dir");

            // 读取命令输出
            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("Exit Code: " + exitCode);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

使用 ProcessBuilder 执行 CMD 命令

public class RunCMD {
    public static void main(String[] args) {
        try {
            // 构建 ProcessBuilder 对象
            ProcessBuilder builder = new ProcessBuilder("cmd.exe", "/c", "dir");

            // 启动进程
            Process process = builder.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("Exit Code: " + exitCode);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

注意事项

  • cmd /c 表示执行命令后关闭 CMD 窗口,cmd /k 表示执行后保持 CMD 窗口打开。
  • 如果命令包含空格或特殊字符,建议使用 ProcessBuilder,因为它可以更好地处理参数。
  • 需要处理 IOExceptionInterruptedException 异常。
  • 若需执行多条命令,可以使用 && 连接,如 cmd /c "dir && echo Done"

标签: javacmd
分享给朋友:

相关文章

java如何输入数组

java如何输入数组

输入数组的方法 在Java中,可以通过多种方式输入数组,具体取决于输入源(如控制台、文件等)和数组类型(如基本类型或对象类型)。以下是几种常见的方法: 使用Scanner从控制台输入 对于基本数据类…

如何编译java文件

如何编译java文件

安装JDK 确保系统已安装Java Development Kit(JDK)。可通过命令行输入 javac -version 和 java -version 验证。若未安装,需从Oracle或Open…

java如何生成随机数

java如何生成随机数

生成随机数的方法 在Java中生成随机数可以通过多种方式实现,以下是几种常见的方法: 使用Math.random()方法 Math.random()方法返回一个double类型的伪随机数,范围在[0…

java如何导包

java如何导包

导入包的方法 在Java中,导入包(package)可以通过import语句实现,用于引入其他类或包中的功能。以下是几种常见的导包方式: 导入单个类 import java.util.ArrayL…

java如何打印数组

java如何打印数组

打印数组的方法 在Java中,打印数组有多种方式,以下是几种常见的方法: 使用Arrays.toString()方法 这种方法适用于一维数组,可以快速将数组转换为字符串形式输出: int[] a…

java如何返回数组

java如何返回数组

返回数组的方法 在Java中,可以通过多种方式返回数组。以下是几种常见的方法: 直接返回数组 定义一个方法,返回类型为数组类型,直接在方法内部创建并返回数组。 public int[] getI…