我有这个代码:
Process p = Runtime.getRuntime().exec(command.toString(), null,
new File("D:\\Cognity"));
但问题是 Cognity 目录并不总是在 D:\中,它可能在 C:\等中。所以我的问题是是否有一种方法可以给它一个相对路径,所以我不这样做是否必须根据使用该程序的 PC 更改此代码?
最佳答案
由于 System.getProperty("user.dir"));
返回启动 JVM 的目录,您仍然无法保证您是在 C:\还是 D:\
我的建议是将 Cognity 位置作为 -D 命令行参数传递并像这样使用它:
Process p = Runtime.getRuntime().exec(command.toString(), null, new File(System.getProperty("cognity.dir")));
关于java - java中的相对文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18587939/