gpt4 book ai didi

java - 我应该在哪里找到要由 java.util.ResourceBundle 加载的资源?

转载 作者:行者123 更新时间:2023-12-01 14:09:22 24 4
gpt4 key购买 nike

我遇到了这段代码

ResourceBundle BUNDLE = ResourceBundle.getBundle("a.b.c.d.E");

我想知道在哪里可以找到要加载的文件?我在磁盘上找不到文件 a.b.c.d.E

最佳答案

来自 ResourceBundle 的 getBundle 文档:

*....getBundle 然后迭代候选包名称以查找第一个可以实例化实际资源包的名称。对于每个候选包名称,它尝试创建一个资源包:

首先,它尝试使用候选包名称加载一个类。如果可以使用指定的类加载器找到并加载这样的类,分配与 ResourceBundle 兼容,可以从 ResourceBundle 访问,并且可以实例化,则 getBundle 创建此类的新实例并将其用作结果资源包。

否则,getBundle 会尝试查找属性资源文件。它通过替换所有“.”,从候选包名称生成路径名。带有“/”的字符并附加字符串“.properties”。它尝试使用 ClassLoader.getResource 查找具有此名称的“资源”。 (请注意,getResource 意义上的“资源”与资源包的内容无关,它只是数据的容器,例如文件。)如果找到“资源”,它会尝试创建来自其内容的新 PropertyResourceBundle 实例。如果成功,该实例将成为结果资源包。*

所以我从中理解的是:如果你的

a.b.c.d.E

不是类,那么它会寻找路径为的属性文件

a/b/c/d/E.properties

关于java - 我应该在哪里找到要由 java.util.ResourceBundle 加载的资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18656769/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com