当我尝试在 Windows 资源管理器中选择路径中包含空格的文件或目录时,它会选择一个完全不同的目录:
explorer.exe "/select,C:\Program Files\foobar"
我已经尝试过用 Java
Runtime.getRuntime().exec(new String[] {
"explorer.exe",
"/select," + filePath
});
并使用上面的命令行。在这两种情况下,结果相同。我该怎么做才能解决这个问题?
答案1
你必须引用小路(不要引用该/select,
部分)。
命令行(已测试):
explorer.exe /select,"C:\Program Files\foobar"
Java(未测试):
Runtime.getRuntime().exec(new String[] {
"explorer.exe",
"/select,\"" + filePath + "\""
});
答案2
这在 JDK6 中运行良好。
Runtime.getRuntime().exec(new String[] {
"explorer.exe",
"/select,",
"\"" + filePath + "\""});