我做Swing的时候文件要放绝对路径,相对路径出不来!所以我用如果我的类放在D:\aaa\Class里Thread.currentThread().getContextClassLoader().getResource("");MenuTest.class.getClas...
我做Swing的时候文件要放绝对路径,相对路径出不来!
所以我用
如果我的类放在D:\aaa\Class里
Thread.currentThread().getContextClassLoader().getResource("");
MenuTest.class.getClassLoader().getResource("");
ClassLoader.getSystemResource("");
MenuFrame.class.getResource("");
MenuFrame.class.getResource("/"); //Class文件所在路径
new File("/").getAbsolutePath(); //得到根目录 D:\
System.getProperty("user.dir"); //得到Class文件的上级目录,这里得到的值是D:\aaa
我再用一个变量来接收他的值,再连接以后的路径。我是这样做的,
假如我们已经用变量a来接收到了值;
JLabel jLabel1 = new JLabel(new ImageIcon( a + "//src//menutest//images//11.jpg"));
问题出来了!出来的是(D:\aaa//images//11.jpg)
无法显示图片,
我再想用 a = a.replaceAll("\", "//"); 字符串替换,可是不行,只要打入\就会报错,想问一下各位高手,还有其它方法吗?
我试过用相对路径!但是不行,很早就用过了!我用的是JBuilder2006,
这个转换的问题我自己已经解决了,不过还是谢谢你!
我之所以以前没的转成功,是没有了解路径在内存中存储的方方式,
比如说D:\aa这个路径,存以内存中是D:\\aa而我们要正常的转的话,不可以a = a.replaceAll("\", "//");
这样出来的就不是想要的结果了!
而要
a = a.replaceAll("\\\\", "//");
这样就可以正确的转了!这时候的结果就为D://
不过现在我让新的烦躁烦住了!
我是一个新手!刚学的!现在我在一个类文件中转好了值,但不知道怎么把值传给在同一个包中的另一个类文件中去!
比如aaa.java中main()方法中变量C的值传到bbb.java中去,可以在bbb.java是任何的类和方法都可以使用!
展开