gpt4 book ai didi

java - 如何使用参数名称而不是数字来格式化消息?

转载 作者:IT老高 更新时间:2023-10-28 20:29:15 31 4
gpt4 key购买 nike

我有类似的东西:

String text = "The user {0} has email address {1}."
// params = { "Robert", "myemailaddr@gmail.com" }
String msg = MessageFormat.format(text, params);

这对我来说不是很好,因为有时我的翻译人员不确定 {0} 和 {1} 中的内容,如果能够改写消息而不用担心 args 的顺序,那就太好了.

我想用可读的名称而不是数字替换参数。像这样的:

String text = "The user {USERNAME} has email address {EMAILADDRESS}."
// Map map = new HashMap( ... [USERNAME="Robert", EMAILADDRESS="myemailaddr@gmail.com"]
String msg = MessageFormat.format(text, map);

有没有简单的方法来做到这一点?

谢谢!抢

最佳答案

您可以为此使用 MapFormat。在此处了解详细信息:

http://www.java2s.com/Code/Java/I18N/AtextformatsimilartoMessageFormatbutusingstringratherthannumerickeys.htm

String text = "The user {name} has email address {email}.";
Map map = new HashMap();
map.put("name", "Robert");
map.put("email", "rhume55@gmail.com");

System.out.println("1st : " + MapFormat.format(text, map));

输出:

1st : The user Robert has email address rhume55@gmail.com.

关于java - 如何使用参数名称而不是数字来格式化消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5463714/

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