我想在java MessageFormat中输出一些花括号。例如,我知道以下内容不起作用:
MessageFormat.format(" public {0} get{1}() {return {2};}\n\n", type, upperCamel, lowerCamel);有没有办法对"return {2}“周围的大括号进行转义?
发布于 2009-07-27 08:42:42
发布于 2009-07-27 08:43:18
哇。惊喜吧!MessageFormat的文档知道答案:
在字符串中,
"''"表示单引号。QuotedString可以包含除单引号以外的任意字符;将删除两边的单引号。UnquotedString可以包含除单引号和左花括号之外的任意字符。因此,应该产生格式化消息"'{0}'"的字符串可以写成"'''{'0}''"或"'''{0}'''"。
发布于 2009-07-27 08:43:08
使用单引号:
MessageFormat.format(" public {0} get{1}() '{'return {2};'}'\n\n",
type, upperCamel, lowerCamel);如果您想实际使用单引号,只需将其加倍即可。JavaDoc for MessageFormat给出了这个有点复杂的例子:
因此,应该导致格式化消息
"'{0}'"的字符串可以写成"'''{'0}''" or "'''{0}'''"。
单引号为'',转义大括号为'{',右大括号为0,右引号为'}',右引号为''。
https://stackoverflow.com/questions/1187093
复制相似问题