1

快速提问:

对于某些启动,我需要将带有 url 的 java URL 类传递给特定文件。但是我在我的应用程序的资源中拥有这个文件。所以我问是否可以使用相对地址创建 java URL 类?我从来没有见过这样的东西,所以我想知道。

4

2 回答 2

1

尝试先创建一个File对象(您可以在其中提供资源的相对路径),然后将其转换为 URL:

File file = new File("resources/myresource.abc");
URL url = file.toUrl();
于 2012-08-30T11:25:39.967 回答
1

您可以获得相对于您的 java 类文件所在位置的 URL,并在同一位置引用文件。这是使用类的getResource()方法完成的。将资源放在一个名为“resources”的文件夹中,与您的 .class 文件位于同一位置。然后你可以得到一个相对于类位置的 url,如下所示:

URL url = <InsertYourClassName>.class.getResource("resources/<InsertNameOfResource>");

这将获得一个相对于您所在班级的 url 路径,并在资源文件夹中查找您的资源。只需将资源放在与您的类相同的目录中,而不是放在这样的资源文件夹中,就可以实现相同的目的:

URL url = <InsertYourClassName>.class.getResource("<InsertNameOfResource>");

希望这可以帮助 :)

于 2012-08-30T11:37:32.947 回答