我可以在属性文件中引用另一个属性(使用$ {property})[重复]
-
05-07-2019 - |
题
查看我的“file.properties”:
key1= My name is
key2= ${key1} Martin !
为什么当我得到“key2”的值时我的结果是“$ {key1} Martin!”不像“我的名字是马丁!”
=>我在Java 6中编程 =>我使用java.util.Properties
解决方案
其他提示
使用Java 属性
类。
属性键和值只是字符串。它们没有处理,因此您无法引用值中的其他值。
Ant文件是脚本;属性文件是字符串桶。
属性文件的主要用途是作为可翻译文本的字符串容器。通常在资源包中使用的格式字符串使用基于索引的系统。翻译字符串时,可以在字符串的翻译版本中更改参数的顺序,而无需更改Java代码。
String what = "Hello";
String who = "Martin";
System.out.println(MessageFormat.format("{0}, {1}!", what, who));
System.out.println(MessageFormat.format("{1}, {0}!", what, who));
输出:
Hello, Martin!
Martin, Hello!
对于这样的用例,将功能封装在Properties类中是没有意义的,因为字符串通常需要来自应用程序的数据。可以使用 MessageFormat 类来执行替代。
不应将此类型的格式与其他格式选项混淆/util/Formatter.html“rel =”nofollow noreferrer“>格式化程序:
System.out.format("%s, %s!%n", what, who);
不隶属于 StackOverflow