我正在尝试修复禁用api的错误。我有一个错误,上面写着:
logger.debug(MessageFormat.format("Added {0} documents", new Object[] { new Integer(count) }));
哪个指向:
logger.debug(MessageFormat.format("Added {0} documents", new Object[] { new Integer(count) }, Locale.ROOT));
所以,我把它改为:
{{1}}
但是,错误仍然存在。我该如何解决?
答案 0 :(得分:1)
没有任何静态MessageFormat.format()实现接受Locale作为参数,尤其是作为最后一个参数,因为它会干扰Object ...签名;设置语言环境的唯一方法是在构造函数中,所以如果你热衷于使用静态格式()方法,你必须使用与此类似的代码“滚动你自己的”:
public static String format(Locale loc, String pattern, Object ... arguments)
{
MessageFormat temp = new MessageFormat(pattern, loc);
return temp.format(arguments);
}