【发布时间】:2016-10-21 14:49:30
【问题描述】:
在我当前的项目中,我们使用字符串的属性文件。然后使用 MessageFormat 对这些字符串进行“格式化”。不幸的是,MessagFormat 对单引号的处理在使用大量撇号的语言(例如法语)中成为了一个障碍。
例如,假设我们有这个条目
login.userUnknown=User {0} does not exist
当它被翻译成法语时,我们得到:
login.userUnknown=L'utilisateur {0} n'existe pas
这个,MessageFormat不喜欢……
而我,不喜欢以下内容,即必须使用双引号:
login.userUnknown=L''utilisateur {0} n''existe pas
我不喜欢它的原因是它会导致到处出现拼写检查错误。
问题:我正在寻找以下说明的替代方法,一种不需要双引号但仍使用位置占位符({0}、{1}...)的替代方法。还有什么可以用的吗?
MessageFormat.format(Messages.getString("login.userUnkown"), username);
【问题讨论】:
-
这是一个错误:我的意思是
MessageFormat。
标签: java localization properties-file