11

我想知道如何为存储在我的 java 项目的 src 文件夹中的文本文件指定相对路径名。我想用这个文本文件的路径存储一个字符串。例如,如果我的 java 项目的 src 文件夹中有 example.txt,我将如何找到它的相对路径?我也在我的 main 中这样做,所以我在使用 .getResource() 时遇到了麻烦。我该怎么做?谢谢。

我的文件路径如下 eclipse /MyProject/src/data.txt 中的属性

我试过了:

字符串路径 = "/MyProject/src/data.txt";

但这不起作用?

4

3 回答 3

16

如果您使用的是 eclipse,请将您的文本文件放在项目文件夹的根目录中,在/srcand/bin文件夹之外。现在应该可以通过相对路径直接访问它。

如果要访问 src 文件夹中的文件,则必须/src/在文件路径/名称之前附加前缀

于 2013-03-07T20:53:33.023 回答
11

src/在文件路径/名称之前使用前缀。

String path = "src/data.txt"; 
于 2014-05-08T10:25:25.567 回答
3

该路径是相对于您执行“java”命令的目录。例如

 /opt/projects/myproject>$ java -cp <whatever your classpath is that contains your class files> com.mycompany.mypackage.MyJavaClass

在这种情况下,MyJavaClass 会找到相对于目录
/opt/projects/myproject的文件

如果您愿意,还有另一种方法可以做到这一点:您可以使用通过类路径机制找到的加载资源。

 getClass().getResource("foo.txt");

您可以查看此帖子以获取更多信息

在 Java 中加载资源的首选方式

于 2013-03-07T20:57:53.390 回答