我在引用jar文件中的简单图像时遇到了麻烦。
我有一个包au.com.mysite.pdftha包含Java文件我有一个包au.com.mysite.pdf.restha包含图像
au.com.mysite.pdf
au.com.mysite.pdf.res
在我的java文件中,我引用了这样的图像 getClass().getResource("/au/com/mysite/pdf/res/logo.png").getPath()
getClass().getResource("/au/com/mysite/pdf/res/logo.png").getPath()
但是无法找到该图像。在首播中看起来像这样 /C:/Documents%20and%20Settings/myname/workspace/gnupdf/bin/au/com/mysite/pdf/res/logo.png
/C:/Documents%20and%20Settings/myname/workspace/gnupdf/bin/au/com/mysite/pdf/res/logo.png
前导“ /”和分隔符在Windows中不正确。
我检查了此路径,它在MS Explorer中不起作用。
好的,它在某种程度上可以正常工作,但是图像路径不正确,/C:/Documents%20and%20Settings/myname/workspace/gnupdf/bin/au/com/mysite/pdf/res/logo.png不是对文件的引用,前导斜杠和%20空格字符是什么?如何将其转换为文件URL而不是Web URL?
如果图像在jar中,则getResource不会返回任何有用的东西。getResourceAsStream可能就是您想要的。