Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 导入文件时避免完整的文件路径_Java_Embedded Resource - Fatal编程技术网

Java 导入文件时避免完整的文件路径

Java 导入文件时避免完整的文件路径,java,embedded-resource,Java,Embedded Resource,尝试将图像读入java,目前我要做的是: Image img = new Image("file:E:/Javaworkspace/Project/src/resource/image.png"); 然而,我不是唯一一个将要在该项目上工作的人,而且这条路径只在我的机器上工作。我确实试过了 Image img = new Image("file:/resource/image.png") 但这会导致FileNotFound。我不知道这个东西在英语里叫什么,我希望你能理解我在这里要表达的意思 编

尝试将图像读入java,目前我要做的是:

Image img = new Image("file:E:/Javaworkspace/Project/src/resource/image.png");
然而,我不是唯一一个将要在该项目上工作的人,而且这条路径只在我的机器上工作。我确实试过了

Image img = new Image("file:/resource/image.png")
但这会导致
FileNotFound
。我不知道这个东西在英语里叫什么,我希望你能理解我在这里要表达的意思

编辑:

我现在通过Build Path添加了文件夹“resource”,并尝试获取如下输入流:

ImageView imgView = new ImageView(new Image(this.getClass().getResourceAsStream("/resource/image.png")));

不用说,我得到了一个
NullPointerException
,根据文档,当路径不存在时会发生该异常。在我通过构建路径专门创建它之后,它怎么可能不存在呢?它存在于类路径中。(是的,文件也在那里,或者我可以不简单地将其复制到文件夹中吗?

我相信您可以随时尝试user.home,但如果有人更新图像或添加图像,它将不会为您更新

Image img = this.getClass().getResource("/resource/image.png");
可能把括号弄乱了


另外,请确保您的文件夹“resource”位于正确的文件夹中(很可能是src和out位于相同的文件夹中)。请将图像放置在项目文件夹中,而不是使用文件系统访问该文件。然后您可以使用以下方法:

Image image = ImageIO.read(getClass().getResourceAsStream("/resource/image.png"));

要在任何人需要的地方获取映像文件。

您的项目主目录中是否有名为“resource”的文件夹出于某种原因检查此空指针异常。此处很抱歉。buffereImage=ImageIO.read(新文件(“./picture.jpg”));也适用于图像;p