java调用cmd命令
时间: 2023-06-29 12:06:15 浏览: 111
Java可以通过`Runtime.getRuntime().exec()`方法来执行命令行命令。例如,要在Java中运行"dir"命令来列出当前目录下的文件,可以这样做:
```java
try {
Process p = Runtime.getRuntime().exec("cmd /c dir");
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
```
在这个例子中,我们使用`Runtime.getRuntime().exec()`方法来运行"cmd /c dir"命令,并使用`BufferedReader`从命令的输出中读取数据。最后,我们将输出打印到控制台上。
需要注意的是,在执行命令时,需要指定`cmd /c`前缀,它告诉系统要使用命令行解释器来执行命令。
相关问题
java调用cmd命令切换磁盘
在Java中调用cmd命令可以使用`Runtime.getRuntime().exec()`方法。要切换磁盘,可以使用`cd`命令,例如:
```java
String cmd = "cmd /c cd /d D:";
Runtime.getRuntime().exec(cmd);
```
这个命令将切换到D盘。`/d`参数表示切换到指定磁盘的根目录。
需要注意的是,`exec()`方法执行命令时是异步的,如果需要等待命令执行完毕再进行下一步操作,可以使用`Process.waitFor()`方法。完整的示例代码如下:
```java
public class Test {
public static void main(String[] args) {
try {
String cmd = "cmd /c cd /d D:";
Process process = Runtime.getRuntime().exec(cmd);
process.waitFor();
System.out.println("Switched to D drive.");
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
```
java 执行cmd 判断结束_java调用cmd命令并捕获执行结果字符串的代码
以下是 Java 中执行 cmd 命令并捕获执行结果字符串的示例代码:
```java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class CmdExecution {
public static void main(String[] args) {
String command = "dir"; // 要执行的命令
try {
Process process = Runtime.getRuntime().exec(command); // 执行命令
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
StringBuilder output = new StringBuilder();
while ((line = reader.readLine()) != null) {
output.append(line).append("\n"); // 读取命令执行结果
}
int exitVal = process.waitFor(); // 等待命令执行完毕
if (exitVal == 0) {
System.out.println("命令执行成功,输出结果如下:");
System.out.println(output.toString()); // 输出命令执行结果
} else {
System.out.println("命令执行失败,错误码:" + exitVal);
}
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
```
以上代码中,我们使用 `Runtime.getRuntime().exec(command)` 方法执行命令,并使用 `process.getInputStream()` 获取命令执行结果。由于获取命令执行结果是一个阻塞操作,因此需要使用 `process.waitFor()` 等待命令执行完毕并获取执行结果。最后,根据命令的执行结果判断命令是否执行成功。
阅读全文