【发布时间】:2009-06-09 21:15:44
【问题描述】:
在我们的应用程序中,我们允许用户打开文件和目录。
Java 6 为我们提供了...
java.awt.Desktop.getDesktop().open(file);
效果很好。不过由于我们需要保证Java 5的兼容性,所以我们也实现了一个打开文件的方法,在cmd.exe中调用start命令...
String command = "cmd.exe start ...";
Runtime.getRuntime().exec(command);
这就是问题出现的地方。似乎start 命令只能处理8.3 文件名,这意味着任何非短(8.3)文件/目录名称都会导致start 命令失败。
有没有一种简单的方法来生成这些短名称?还是有其他解决方法?
【问题讨论】:
标签: java windows runtime.exec