gpt4 book ai didi

java - 没有默认区域设置的 MessageFormat 格式

转载 作者:行者123 更新时间:2023-11-30 07:13:05 25 4
gpt4 key购买 nike

我正在尝试修复禁用 api 的错误。我有一个错误,内容是:

[forbiddenapis] Forbidden method invocation: java.text.MessageFormat#format(java.lang.String,java.lang.Object[]) [Uses default locale]
[forbiddenapis] in org.a.b.MyClass (MyClass.java:813)

这表明:

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));

但是,错误仍然存​​在。我该如何修复它?

最佳答案

静态 MessageFormat.format() 实现都不接受 Locale 作为参数,尤其是作为最后一个参数,因为它会干扰 Object... 签名;设置区域设置的唯一方法是在构造函数中,因此如果您热衷于使用静态 format() 方法,则必须使用类似于以下的代码在某处“滚动您自己的”:

public static String format(Locale loc, String pattern, Object ... arguments) 
{
MessageFormat temp = new MessageFormat(pattern, loc);
return temp.format(arguments);
}

关于java - 没有默认区域设置的 MessageFormat 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38857783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com