2012-12-19 15 views
1

我有项目,我已经在包图标..eg com.example.icon和com.example.classes ....现在我想设置一个字符串路径变量来设置路径是这样的.../src/com/example/ui,之后我指定了它的图标名称并访问icon ..问题是我想动态设置它,以便我的jar文件不会在不同系统中出现问题..how设置路径变量我不能够计算out..thank你在字符串中获取图标包路径java

我有锯File.getResource("some file name")但我do't想在开始设置任何文件名.. ,我使用净豆

编辑

现在我使用这个代码..

URL url = Main.class.getResource("PATH"); 
    String path = url.toString(); 
    ....... 
    ImageIcon icon = new ImageIcon(path+"/add_icon.png"); 

,但它不显示图标和显示为“sun.tools.jar.main” Depericated API错误和我检查系统出路径值是有效的。 。 ....?

+0

尝试'字符串路径=“/COM /示例/ UI“; ImageIcon icon = new ImageIcon(this.getClass()。getResource(path +“/ add_icon.png”));' –

回答

4

尝试使用

getClass().getResource("com/example/ui/imageFile"); 
+0

URL url = Main.Class.getClass()。getResource(“/ com/idoccsmain/icons /”); String path = rul.toString(); ...... ImageIcon icon = new ImageIcon(path +“/ add_icon.png”); 我使用它像这样,但它显示了我一些过时的API“sun.tools.jar.main”和我的图标不加载尚未.. –

+0

每个图像应加载 ImageIcon的图标=新的ImageIcon(主。 Class.getClass()。getResource(“/ com/idoccsmain/icons /”+“add_icon.png”); – StanislavL

+0

现在我正在尝试它,当我通过IDE运行它时,它正在获取图标...但是当我在制作jar文件后运行它时,它并没有显示文件...? –

0

有多种方式来做到这一点。无论您使用命令行参数

public static void main(String[] args) { 
    String path = args[0]; 
} 

或属性

Properties props = new Properties(); 
props.load("Some Properties file in a fixed location"); 

String path = props.getProperty("path"); 

或系统属性(有-Dpath选项调用)

String path = System.getProperty("path"); 
0

此外,您还可以使用类加载器来获得InputStream并读取文件。

fis = YourClass.class.getClassLoader().getResourceAsStream(FILE); 
0

如果您使用的是NetBeans IDE,那么你可以使用“jXImagePanel”用于显示图像的代码为图像设置jXImagePanel是:

jXImagePanel2.setImage(getImage("icons/yourimage.jpg"));

+0

这不是问题......但我的问题是要获取路径,直到“图标包”。 –

相关问题