【问题标题】:Boolean value in properties file属性文件中的布尔值
【发布时间】:2012-11-29 04:31:38
【问题描述】:

我们知道,在属性文件中,每个 value 都被视为字符串。 例如,我的文件中有一个属性:

XYZ=false

我想使用上面的字符串 false 作为条件中的布尔值。问题是我无法修改执行此条件的 java 源 XYZ

if (XYZ) {
  //do something
}

目前,此条件始终返回字符串 true,而不是值为 false 的布尔值。

我可以在属性文件中做一些事情来使其成为布尔值吗?

【问题讨论】:

  • 你能告诉我们你在做什么,因为你的建议甚至不会编译吗?您是否尝试过使用Boolean.parseBoolean 或类似的?
  • @LyubenTodorov 您可能喜欢使用布尔值使用的equalsCaseIgnore。 ;)
  • XYZ 必须是计算结果为 truefalse 的表达式。表情如何? if (Boolean.FALSE.equals(yourProperty))? if (false == yourProperty)?
  • 请先理解问题再回答
  • 我认为当你扩展 java 类时你有最好的机会。覆盖你说的方法。

标签: java properties


【解决方案1】:

从属性文件中获取值后,您可以使用: if (Boolean.valueOf(XYZ)) {...}

【讨论】:

  • 请再次阅读问题。我无法编辑 java 文件
  • 我不明白你的意思?您无法编辑该文件,但可以读取它,然后在 java 中将其转换为布尔值。
  • java 文件在 jar 文件中.. 我不想再制作 jar 文件
  • 重新创建 JAR 是您的最佳选择,因为 Java 代码对于您想要做的事情是有效的(即与“true”比较)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-02
  • 1970-01-01
  • 2016-12-04
  • 2018-09-21
  • 2013-09-22
  • 2011-12-26
  • 1970-01-01
相关资源
最近更新 更多