下面是“Java运行Windows的cmd命令简单代码”的完整攻略。
1. Windows中运行cmd命令
在Windows操作系统中,可以通过cmd命令行来执行各种操作系统命令,又称为“控制台”或“命令提示符”。可以通过Java程序来在Windows中运行cmd命令,常用的方式是借助Runtime
类或ProcessBuilder
类来实现。
2. 使用Runtime类运行cmd命令
Runtime
类允许执行一个进程,可以通过它的常量值getRuntime()
来获取一个Runtime
类的对象,并调用exec(String command)
方法来执行一个进程。
import java.io.IOException;
public class RuntimeCMDExecute {
public static void main(String[] args) {
try {
Process process = Runtime.getRuntime().exec("cmd /c dir");
process.waitFor(); // 等待进程结束
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
代码中的cmd /c dir
表示执行Windows系统中的dir命令,用于列出当前目录下所有文件和文件夹,/c
参数指定运行完命令后关闭命令窗口。
3. 使用ProcessBuilder类运行cmd命令
另外一个执行命令的方式是通过ProcessBuilder
类,它使用一系列字符串参数指定命令及其参数,可以设置环境变量、工作目录等,并且可以使用管道和重定向。
import java.io.IOException;
import java.util.List;
public class ProcessBuilderCMDExecute {
public static void main(String[] args) {
ProcessBuilder processBuilder = new ProcessBuilder();
processBuilder.command("cmd.exe", "/c", "dir");
try {
Process process = processBuilder.start();
process.waitFor();
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
代码中的processBuilder.command("cmd.exe", "/c", "dir")
表示执行Windows系统中的dir命令,/c
参数指定运行完命令后关闭命令窗口。
4. 示例
以下是两个示例说明:
示例一
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class RuntimeCMDInputOutput {
public static void main(String[] args) {
try {
Process process = Runtime.getRuntime().exec("cmd /c ping www.baidu.com");
process.waitFor();
BufferedReader input = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = input.readLine()) != null) {
System.out.println(line);
}
input.close();
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
代码演示了通过Java程序运行Windows系统中的ping命令,检测百度网站的网络连通性,并且将输出结果打印到控制台上。
示例二
import java.io.File;
import java.io.IOException;
public class ProcessBuilderCMDOutputToFile {
public static void main(String[] args) {
try {
ProcessBuilder processBuilder = new ProcessBuilder();
processBuilder.command("cmd.exe", "/c", "dir");
File outputFile = new File("output.txt");
processBuilder.redirectOutput(outputFile);
Process process = processBuilder.start();
process.waitFor();
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
代码演示了通过Java程序运行Windows系统中的dir命令,并将命令输出结果重定向到文件中,文件名为output.txt
。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java运行windows的cmd命令简单代码 - Python技术站