代码之家  ›  专栏  ›  技术社区  ›  M314

具有相对地址的Java URL

  •  1
  • M314  · 技术社区  · 13 年前

    快速提问:

    对于一些初始化,我需要将带有URL的javaURL类传递到特定的文件。但在我的应用程序中,我拥有这个文件的资源。所以我想问,是否有可能创建具有相对地址的javaURL类?我从来没有见过这样的东西,所以我想知道。

    2 回复  |  直到 13 年前
        1
  •  1
  •   Peter Ilfrich    13 年前

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

    File file = new File("resources/myresource.abc");
    URL url = file.toUrl();
    
        2
  •  1
  •   Chris B    13 年前

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

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

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

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

    希望这能有所帮助:)

    推荐文章