我在java程序中导入了一张图片,但是导出为jar文件时无法显示,应该是相对路径的问题,请问怎么解决??
代码如下:try{imagePath=System.getProperty("user.dir")+"/src/images/background.jpg";//reso...
代码如下:
try { imagePath = System.getProperty("user.dir")+"/src/images/background.jpg" ;// resource = this.getClass().getResource("/background.jpg");// bgImage = ImageIO.read(resource); bgImage = ImageIO.read(new File(imagePath)); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }
请问怎该啊??我用url试了下,但是在运行时根本无法显示。在下是个初学者,还请各位指点一下吧!!最好给个代码。 展开
try { imagePath = System.getProperty("user.dir")+"/src/images/background.jpg" ;// resource = this.getClass().getResource("/background.jpg");// bgImage = ImageIO.read(resource); bgImage = ImageIO.read(new File(imagePath)); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }
请问怎该啊??我用url试了下,但是在运行时根本无法显示。在下是个初学者,还请各位指点一下吧!!最好给个代码。 展开
1个回答
展开全部
System.getProperty("user.dir")得到的应该是这种形式的
盘符:\... ...\工作空间\FiveChaessProject,
这样拼行不呢:
imagePath = System.getProperty("user.dir")+"\\src\\images\\background.jpg"
盘符:\... ...\工作空间\FiveChaessProject,
这样拼行不呢:
imagePath = System.getProperty("user.dir")+"\\src\\images\\background.jpg"
更多追问追答
追问
还是一样~~导出jar还是不显示
追答
刚才说的方法打成jar包确实有问题,我试了一下其它方法,终于解决了,上面打成jar包如果能成功执行并正确访问到图片,则会弹出图片宽度:
应该把image文件放在src下面,像我这里的test/src/image经过编译后,会产生test/bin/image,即把image文件放到bin文件夹下,通过getClass().getResource()访问,bin文件夹则是应用程序的根,则通过/image/来访问图片。
再弹出一个窗口来测试获取的路径:
在myeclipse中运行时第一句会弹出:
但打成jar之后放在桌面就不一样了,
注意,我的jar包名是getImage.jar,但在路径后还加了一个!号,至于这个的原因我就不知道了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询