组成复杂字符串
执行此任务来将变量子串插入已本地化的字符串中。
开始之前
关于此任务
过程
- 在消息目录中,在要检索的字符串中指定替代的位置。 变量组件由花括号指定(例如,{0})。
- 在应用程序代码中,创建在包含变量值的数组中传递的 LocalizableTextFormatter 实例。 如果变量子串必须本地化,那么您可以 创建嵌套的 LocalizableTextFormatter 实例,并传递实例代替值。
- 生成本地化的字符串。 当在格式化程序实例上调用格式化方法时,格式化程序采用前一步中所传递数组的每个元素,并用它替换占位符(该占位符具有从消息目录中检索的字符串中的匹配索引)。例如,在数组中索引 0 的值替换已检索字符串中的 {0} 变量。
示例
来自英语消息目录的下列行显示带有单个替代的字符串:
successfulTransaction = The operation on account {0} was successful.
其他语言消息目录的相同键有带每种语言相应的位置里的变量的此字符串转换。
下列代码显示了单个元素参数数组的创建和 LocalizableTextFormatter 实例的创建和使用。
public void updateAccount(String transactionType) {
...
Object[] arg = {new String(this.accountNumber)};
...
LocalizableTextFormatter successLTF =
new LocalizableTextFormatter ("BankingResources",
"successfulTransaction",
"BankingSample",
arg);
...
successLTF.format(this.applicationLocale);
...
}