I'm happy to live!

          Develop with pleasure!

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            39 隨筆 :: 2 文章 :: 31 評論 :: 0 Trackbacks
          今天學習了java ResourceBundle類的內容,但一直還有一個問題沒有解決,就是它讀取資源文件路徑的問題.

          以下是我的代碼:
           1package test.resource;
           2
           3import java.util.Locale;
           4import java.util.ResourceBundle;
           5
           6public class Test {
           7    public static void main(String args[]) {
           8        Test test = new Test();
           9        ResourceBundle messages = test.loadResource();
          10        System.out.println(messages.getObject("name"));
          11    }

          12
          13    private ResourceBundle loadResource() {
          14        Locale local = Locale.getDefault();
          15        ResourceBundle messages = ResourceBundle.getBundle("messages", local,
          16                this.getClass().getClassLoader());
          17        return messages;
          18    }

          19}
           我的兩個資源文件messages_en_US.properties,messages_zh_CN.properties都在當前類路徑下面,可是這樣的話運行程序它就找不到資源文件,會報錯:Can't find bundle for base name messages, locale zh_CN
          我必需把兩個資源文件copy到classes根目錄下才行,我想資源文件是可以放在當前類路徑下面的,可是不太清楚如何讀取出來,ResourceBundle.getBundle("messages", local,
              this.getClass().getClassLoader());方法好像只能讀根路徑下的資源,請教各位了!
          posted on 2010-12-26 18:37 Norsor 閱讀(12372) 評論(2)  編輯  收藏 所屬分類: Diary 、programme

          評論

          # re: ResourceBundle讀取資源文件的路徑問題 2010-12-27 00:07 wenlin
          資源文件放在那個包下,加上包的全路徑就可以了  回復  更多評論
            

          # re: ResourceBundle讀取資源文件的路徑問題 2010-12-27 00:27 Aidan Zou
          這里是使用的ClassLoader加載資源文件。
          ResourceBundle messages = ResourceBundle.getBundle("test/resource/messages", local,this.getClass().getClassLoader());
          如果你改成這樣應該是可以運行的。
          ClassLoader加載資源文件的默認目錄是CLASSPATH,所以你需要把資源文件存放于classes目錄中(不能在其子目錄),如果在子目錄需要指定子目錄的位置。  回復  更多評論
            

          主站蜘蛛池模板: 抚顺县| 大冶市| 若尔盖县| 当雄县| 榆林市| 通化市| 浦北县| 西乌珠穆沁旗| 泸水县| 中超| 乌海市| 土默特左旗| 谢通门县| 怀柔区| 平利县| 久治县| 庄浪县| 天峻县| 恩施市| 弥勒县| 商水县| 霍林郭勒市| 车险| 扶绥县| 乐亭县| 贵阳市| 泌阳县| 陕西省| 安庆市| 青铜峡市| 鄄城县| 忻州市| 百色市| 贡觉县| 孙吴县| 寿宁县| 阳谷县| 池州市| 即墨市| 泰顺县| 蚌埠市|