我需要使用 ProcessBuilder 构建以下命令:
"C:\Program Files\USBDeview\USBDeview.exe" /enable "My USB Device"
我尝试使用以下代码:
ArrayList<String> test = new ArrayList<String>();
test.add("\"C:\\Program Files\\USBDeview\\USBDeview.exe\"");
test.add("/enable \"My USB Device\"");
ProcessBuilder processBuilder = new ProcessBuilder(test);
processBuilder.start().waitFor();
但是,这会将以下内容传递给系统(使用 Sysinternals Process Monitor 验证)
"C:\Program Files\USBDeview\USBDeview.exe" "/enable "My USB Device""
注意前面/enable
的引号和后面的两个引号Device
。我需要去掉那些额外的引号,因为它们会使调用失败。有谁知道如何做到这一点?