用相对路径,咋就得不到图片呢
学习Twaver,写的小例子;
图片用绝对路径可以得到,到用相对路径总是得不到。
String upPort = "file:/D:/bucket/workspace/Twaver/resource/image/port1.png"; 这个可以
String upPort = "../../../resource/image/port1.png"; //不可以
请问是什么原因? --------------------编程问答-------------------- 第一个是./吧
"./../../resource/image/port1.png"; //不可以
没试验 蒙的呵呵 --------------------编程问答-------------------- 具体原因说不来
情况就是在IDE中的相对路径中使用一次以上的上级目录符号就会找不到文件
解决办法:利用系统属性文件使用相对路径
当前工程所在目录:
String path = System.getProperty("user.dir"); --------------------编程问答-------------------- 把resouce目录加到Build Path。
然后 getClass().getResource("/image/rack.png") --------------------编程问答-------------------- 导出时把 image目录也放到jar文件里 --------------------编程问答-------------------- 搞不明白,为什么不去他们的论坛问 http://twaver.servasoft.com/forum/ --------------------编程问答--------------------
恩,我这样处理的
String path = System.getProperty("user.dir");
path = path.replace("\\","/");
rack.setImage("file:/"+path+"/resource/image/rack.png");
感觉代码写的不够灵活,像这样么写,如果是到了Linux/Unix环境,能得到图片不? --------------------编程问答-------------------- user.dir 是个不定的目录,用这个定位资源?! --------------------编程问答-------------------- 第二个,是从当前的页面所在的文件夹开始找,".."跳上一级,你自己算吧,如果在不同的目录中坐引用,就会出现这种不能显式的方法
所以建议是绝对路径!读取从项目根目录开始~
补充:Java , Java相关