3

当我创建一个新的动态 Web 项目并执行以下代码时:

File file = new File("");
String path = file.getAbsolutePath();
System.out.println(path);

我得到这个结果:

C:\Users\Toshiba\workspace\Projet 。

哪个好!!!但是当我导入另一个项目并执行相同的代码时,我得到了这个:

D:\Eclipse 。

(eclipse的应用路径)。

然后!!我无法解释或修复。

任何帮助。!

4

2 回答 2

3

因为当您在new File("")中不传递任何内容时,它会占用您项目的默认位置(工作目录) 。

我已经上传了图片,所以你可以很容易地理解: 在此处输入图像描述

假设您的工作区路径是:c:/test/myworkspace

您如上所述配置工作目录(在图像中)

然后运行你会得到类似这样的东西:c:/test/myworkspace/TestJquery

于 2013-08-19T11:04:07.833 回答
3

您是否检查过该方法的文档?

如果这个抽象路径名已经是绝对的,那么路径名字符串就像 getPath() 方法一样简单地返回。如果此抽象路径名是空的抽象路径名,则返回当前用户目录的路径名字符串,该路径名由系统属性 user.dir 命名。否则,此路径名将以系统相关的方式解析。在 UNIX 系统上,通过根据当前用户目录解析相对路径名,使其成为绝对路径名。在 Microsoft Windows 系统上,通过将相对路径名解析为由路径名命名的驱动器的当前目录(如果有),从而使相对路径名成为绝对路径;如果不是,则针对当前用户目录进行解析。

这可能是您需要的所有信息...

于 2013-08-19T11:04:21.090 回答