可以使用Java的ProcessBuilder类来执行系统命令,包括调用cmd执行命令。
以下是一个简单的示例代码,演示了如何在Java程序中调用cmd并执行dir命令:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class CmdDemo {
public static void main(String[] args) {
try {
ProcessBuilder pb = new ProcessBuilder("cmd", "/c", "dir");
pb.redirectErrorStream(true);
Process process = pb.start();
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
} catch (IOException e) {
e.printStackTrace();
在这个示例中,我们创建了一个ProcessBuilder对象,并将cmd和"/c"作为参数传递给构造函数。"/c"参数告诉cmd在执行完命令后关闭自己。然后,我们调用start()方法启动进程,并获取进程的输出流。最后,我们使用BufferedReader逐行读取输出,并将其打印到控制台上。
你可以将上述示例代码中的"dir"替换为任何其他合法的cmd命令,以执行其他操作。请注意,在调用cmd时,你需要特别小心,以避免造成安全问题。