我的代码中有这段代码
ResourceBundle resbundle=ResourceBundle.getBundle("test", Locale.getDefault());
resbundle.getString("compileItem");
如何在此捆绑中放入另一个字符串?
答案 0 :(得分:1)
如果您尝试以编程方式执行此操作,那么接口不会提供任何修改包的方法,因此,除非您找到具有允许扩展的实现,否则您不能。
如果您只想为捆绑包添加值,请编辑文本文件test.properties
(或必要时特定于区域设置的版本)并添加以下行:
compileItem=foo
答案 1 :(得分:0)
ResourceBundle
个对象是只读的。
它们专为查找特定于语言环境的资源而设计,例如文本翻译,图像,图标......
他们不应该写。如果您想要类似于ResourceBundle
但可写的内容,则可能是Properties
对象就是您所追求的对象,甚至是简单的Map
。
答案 2 :(得分:0)
这取决于您最终使用的实际实现类。通常是PropertyResourceBundle
,这意味着您必须将字符串添加到基础属性文件,因为该类是只读的。但是如果你实现自己的ResourceBundle
子类,它可以支持在运行时添加条目。