我在eclipse中建有一个project,在src(或source)下建了两个包,每个包里各有几个*.java,现有一些图片放在pic目录下。我把pic文件夹和bin文件夹放在同一个目录下,使用System.getProperty("user.dir")+"//"+"pic"来获取路径在程序中动态载入图片现在感觉这个办法不太好,如果要想使用jdk的demo目录下的jfc下的Notepad.java文件中的方法来做,应该如何呢?我实在是看不懂,好像是一种读资源文件的方法。
这是部分代码片断:
static {
        try {
            resources = ResourceBundle.getBundle("resources.Notepad", Locale.getDefault));                                                     
        } catch (MissingResourceException mre) {
            System.err.println("resources/Notepad.properties not found");
            System.exit(1);
        }
    }有劳高手指点迷津!!希望能实现我原来的方法实现的同样的功能

解决方案 »

  1.   

    恩 你这个方法肯定不好,不过
     resources = ResourceBundle.getBundle("resources.Notepad", Locale.getDefault));          这个方法也不是很好,他用ResourceBundle是为了代码国际化而已.
    你可以直接用相对路径或 getClass().getResource("1.jpg");
      

  2.   

    可以参考下
    http://community.csdn.net/Expert/topic/5440/5440715.xml?temp=.7187006
      

  3.   

    TO: fulong258(【轰隆隆】)  能否仔细说明一下?
    TO:anhy(鎏)  这个帖子的情况好像和这里不大一样
    TO:lixiaoxue85(蛮野蛮)   我就是不知道怎么使用getClass().getResource("1.jpg");
    资源文件和bin文件夹或是源码文件夹的相对位置如何(就是资源文件放哪里)?我的main class放在一个包中,使用getClass()只能获得包所在的路径吧,还有"1.jpg"可以用参数传递的方法吗?
      

  4.   

    我使用相对路径"/picture/*.jpg"解决了这个问题,可恼的是现在使用fatjar打包时却出错,反而是前面的那种不好的办法没有出现问题。大家帮忙找找原因吧!!
      

  5.   

    用 System.getProperty("user.dir") 的话,这个属性容易跟运行他的外部程序一起改变,用 MyClass.class.getClassLoader().getResourceAsStream("./file.ext"); 的话,只能返回一个 InputStream 。。
      

  6.   

    liltos(糊涂鬼)能麻烦说得清楚点么?
    我是用ClassName.class.getResource("/picture/*.jpg")来加载图片的,picture文件夹在bin目录下
      

  7.   

    我使用相对路径"/picture/*.jpg"解决了这个问题,可恼的是现在使用fatjar打包时却出错,反而是前面的那种不好的办法没有出现问题。大家帮忙找找原因吧!!
    ============
    打包的话用../picture/*.jpg试试。
      

  8.   

    eclipse每个插件都有独立的ClassLoader,所以最好的方法是取得插件的类加载器,取得插件的路径再加上资源的路径。
      

  9.   

    打包的话用../picture/*.jpg试试
    =================================
    这样做在eclipse中就出错了eclipse每个插件都有独立的ClassLoader,所以最好的方法是取得插件的类加载器,取得插件的路径再加上资源的路径。
    ================================
    恕我愚昧,不知道怎么做???劳烦说明一下
      

  10.   

    打包的话用../picture/*.jpg试试
    =================================
    这样做在eclipse中就出错了
    是这样的~~~~~~~~
    为什么,我也不知道了。