有没有办法列出所有使用 Java 连接的虚拟磁盘?我尝试使用 ProccessBuilder 打开 diskpart 并运行命令,然后使用 InputStreamReader,将行保存到数组中以便稍后提取 vhd 名称。但是在运行 diskpart 命令后,我的程序冻结了。
try {
commands.add("cmd.exe");
commands.add("start");
commands.add("diskpart");
commands.add("list vdisk");
ProcessBuilder builder = new ProcessBuilder(commands);
Process p = builder.start();
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br = new BufferedReader(new InputStreamReader(p.getErrorStream()));
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}