我正在使用Java资源包来本地化我的应用程序,并且我创建了一个函数,该函数根据代码中的资源包返回本地化的消息......如下所示:
int32_t
但是,我想知道是否有可能在资源包中添加一个条目,以防通过的代码不存在,例如:
public String getDescription(String code, ResourceBundle resBundle){
String returnValue = null;
try{
returnValue=resBundle.getString(code);
}catch(Exception ex){
returnValue = null;
}
}
任何帮助?
答案 0 :(得分:0)
您可以尝试使用Properties
类并通过将ResourceBundle的键转换为Stream
类来填充它,因为Properties类的功能类似于带有键和值的Map
。例如:
Properties props = new Properties();
resBundle.keySet().stream().forEach(k -> props.put(k, resBundle.getString(k)));
然后你可以使用getProperty()
Properties
方法,它返回你在第二个参数中指定的值,如果它没有找到指定的键(在你的情况下键是code
):
returnValue=props.getProperty(code,"xyz");