//依据Locale资源包ResourceBundlebundle=ResourceBundle.getBundle("MyResource",curLocale);System.out.println("curLocale=" curLocale);System.out.println("locale=" bundle.getLocale());
在你的编码的哪行getBundle()启用后边,了二行打句,发觉依照你的设定,便是2个资源化再生文MyResource.properties和MyResource_zh_CN.properties,而且键入en US时,輸出以下:
curLocale=en_US
locale=zh_CN
这表明,你设定的locale和具体寻找的locale不一致,不是你的curLocale设定不正确,只是这句话getBundle()启用没起功效。
剖析缘故以下:由于并沒有MyResource_en_US.properties存有,不明不白会寻找MyResource.properties,但事实上找了MyResource_zh_CN.properties,可能是JDK源代码里在沒有可取代的資源时,寻找的是预留的資源,也很有可能便是JDK的bug