string命令中的当前目录,用于运行文件

时间:2014-11-22 05:10:17

标签: java eclipse string processbuilder

我已经问了一个类似的问题,但我已经改变了我的代码。我正在制作一个应用程序,从usb打开其他应用程序,如hirens启动CD菜单工具箱。我现在的问题是,每当我用usb文件和工具将usb插入另一台计算机时,目录就会发生变化。例如,如果我的脚本是......

String command =" E:/IPRESET.bat"

比将usb连接到另一台PC时的情况要好,而不是将它从E改为J,或者其他什么。

我想知道是否有办法用代码替换E,J,K或其他任何代码来设置当前的java文件目录,以便为每台计算机进行更改。谢谢!

1 个答案:

答案 0 :(得分:0)

如果我理解你的问题,那么是的。可以使用类似

的方式访问当前文件夹中的文件
String command = "IPRESET.bat";
File f = new File(command);
if (f.exists()) {
    try {
        System.out.println(f.getCanonicalPath());
    } catch (IOException e) {
        e.printStackTrace();
    }
}

注意:在尝试使用File.exists()之前确保File.listRoots()是一个非常好的主意。

此外,您可以使用{{3}} 列出可用的文件系统根目录并迭代它们以检查您的脚本

File[] roots = File.listRoots();
for (File r : roots) {
  File f = new File(r, "IPRESET.bat");
  if (f.exists()) {
    // ...
  }
}