【发布时间】:2015-02-11 07:47:24
【问题描述】:
我知道这个问题已经被问过很多次了,我已经广泛搜索了这个可能很简单的问题的解决方案。我正在尝试遵循 Oracle 网站上的简单 javaFX 组件教程。我可以这样定义图像:
Image img = new Image("images/portal.png", 50, 50, true, true);
这在图像位于“src”文件夹内的文件夹中时有效,但是当我在“src”文件夹之外有图像文件夹时,我试图让它找到图像,如下所示:
project_root/
|---src/
|---Main.java
|---images/
|---portal.png
我怎样才能做到这一点?我得到的只是错误提示“无效的 URL 或找不到资源”。我尝试使用绝对路径,尝试将“..”放在前面,尝试“HS-Graph/images/portal.png”以及介于两者之间的所有内容:(谢谢!
【问题讨论】:
-
构造一个 URL。用 url.toString() 保存它。然后使用新的图像(字符串)。
-
我不确定你的意思,为什么会有任何不同?它仍然会产生一个与我的情况相同的字符串。
-
使用文件 file = new File("portal.png"); if (file.exists()) String tdir = afile.getAbsolutePath();或者你可以使用 file.toURI() 或者你需要的任何东西。这有帮助吗?
-
好吧,它不起作用:(。file.exists() 是假的。它找不到我的文件。肯定有一种简单的方法可以设置 src 文件夹之外的相对路径!我的意思是,它运行良好!感谢您的帮助...
-
找不到文件是您的任务。阅读 java.io.File 上的 JavaDoc。您只在当前目录中查找。您需要遍历文件系统以找到根目录或与您的环境相关的任何内容。您可以在此处或 google 搜索文件遍历等,以了解如何执行此操作。如果该文件在您的文件系统中,那么您可以找到它。