将Apostrophe放在资源包中后,翻译不正确。
key = {0}'s brush is {1} centimeters tall
(e.g. Sam's brush is 4 centimeters tall)
如果我从a格式化以上密钥,则撇号将丢失。java.util.ResourceBundle
这可能是什么问题?
Answers:
我坚信问题不是资源束,而是您用来打印消息的MessageFormater:
在字符串中,''(两个单引号)表示一个单引号。QuotedString可以包含除单引号之外的任意字符;周围的单引号被删除。UnquotedString可以包含除单引号和左花括号外的任意字符。因此,应该导致格式化消息“ {0}”的字符串可以写为“''{'0}”或“''{0}'''。
所以你需要写:
{0}''s brush is {1} centimeters tall
如果您像我一样完全卡住了(上述方法均无效),则可以将单引号替换为其Unicode:\ u0027。请记住,始终可以在属性文件中使用UTF符号。
考虑使用属性编辑器插件(对于Eclipse)