Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.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_Image_Nullpointerexception_Embedded Resource_Imageicon - Fatal编程技术网

Java 无效的文件引用,哪里出了问题?

Java 无效的文件引用,哪里出了问题?,java,image,nullpointerexception,embedded-resource,imageicon,Java,Image,Nullpointerexception,Embedded Resource,Imageicon,每当我尝试使用paintComponent和ImageIcon绘制图像时,我都会从未知源获得一个NullPointerException,然后指向我的图像获取程序和线程开始 图像消除器 ImageIcon image = new ImageIcon(this.getClass().getResource("C:/Users/Rhys/Desktop/workspace/Mindcracker RPG/Res/Background.jpg")); 感谢您的解答使用JavaDoc: this.ge

每当我尝试使用paintComponent和ImageIcon绘制图像时,我都会从未知源获得一个NullPointerException,然后指向我的图像获取程序和线程开始

图像消除器

ImageIcon image = new ImageIcon(this.getClass().getResource("C:/Users/Rhys/Desktop/workspace/Mindcracker RPG/Res/Background.jpg"));
感谢您的解答

使用JavaDoc:
this.getClass().getResource()
仅用于获取
类路径
上的资源,其中
/
表示
默认包

您正在提供一个完全限定的路径,该路径将不起作用

您需要做的是使用以下方法:

从指定的文件创建图像图标

指定的字符串可以是文件名或文件路径。什么时候 指定路径时,请使用Internet标准正斜杠(“/”)作为 分离器。(字符串转换为URL,因此正斜杠 (适用于所有系统。)

例如,指定:

new ImageIcon("C:/Users/Rhys/Desktop/workspace/Mindcracker RPG/Res/Background.jpg");

请注意,路径中有一个空格,该路径最终会转换为
文件:://
URL,因此您可能需要考虑该问题

文件路径有效吗?是的,我尝试在每个pathWell之间使用/和\\,您应该已经看到了足够多的Q&a,从而认识到我们需要知道a)类路径的根b)以驱动器号为前缀的路径使用该方法找不到任何东西。那么我的路径应该是什么呢??从互联网或文件引用,例如File File=new File();是否确实需要使用此.getClass().getResource(“文件名”)而不是新的图像图标(“文件名”)。。。?
new ImageIcon("C:/Users/Rhys/Desktop/workspace/Mindcracker RPG/Res/Background.jpg");