gpt4 book ai didi

java - 智能 Java 格式化程序

转载 作者:行者123 更新时间:2023-12-01 16:41:24 28 4
gpt4 key购买 nike

我正在寻找一个类似于标准格式化程序的智能 Java 字符串格式化程序:

    StringBuffer buffer = new StringBuffer();
Formatter formatter = new Formatter(buffer);
formatter.format("hello %1$s, %2$s and %3$s", "me", "myself", "I");

问题是,如果您在格式上犯了错误(例如您忘记了$s),则会抛出异常。在格式化错误消息时,这并不是我真正想要的(因为它不在应用程序的常规路径中,并且可能未经过测试)。

我当然可以定义自己的类,假设接受像 "hello $1, $2 and $3 这样的字符串,用 ($1 -> %1$s)并为所有参数调用 toString(),但我确信已经开发出了更好的解决方案。

在某个地方,在某个 jar 里......

感谢您提供任何有用的指针。

编辑

我正在寻找类似以下内容的东西:

String out = MySpecialFormatter.format("hello $1, $2 and $3", "me", "myself", "I");

如果您的格式有错误(好吧,存在拼写错误),它会尽力填充绑定(bind)变量,或返回原始格式字符串。

最佳答案

有时答案就在那里......

import static java.text.MessageFormat.format;

String out = format("hello {0}, {1} and {2}", "me", "myself", "2", "3");

是的,Anon ,显然Sun认为所有的程序员都那么懒。

关于java - 智能 Java 格式化程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2150029/

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