我有一个字符串缓冲区然后放入bean并使用JSTL调用网页。我希望它输出像10/10/1987 (23 years)
这样的东西。第一个例子没有返回任何内容,第二个例子没有。
patAge.append(" ")
.append("(")
.append(patientDetails.getAge())
.append(" ")
.append(bpt.get("BPT_YRS"))
.append(")");
输出:10/10/1987
patAge.append(" ")
.append("{")
.append(patientDetails.getAge())
.append(" ")
.append(bpt.get("BPT_YRS"))
.append(")");
输出:10/10/1987 {23 years)
patAge.append(" ")
.append(patientDetails.getAge())
.append(" ")
.append(bpt.get("BPT_YRS"))
.append(")");
输出:10/10/1987 23 years)
似乎左括号会导致它不起作用。
答案 0 :(得分:2)
对于可读代码,我建议切换到MessageFormat。
这是默认示例:
Object[] arguments = {
new Integer(7),
new Date(System.currentTimeMillis()),
"a disturbance in the Force"
};
String result = MessageFormat.format(
"At {1,time} on {1,date}, there was {2} on planet {0,number,integer}.",
arguments);
输出:2053年7月3日下午12:30,部队7号行动受到干扰。
因此,您将变量与消息分开。
答案 1 :(得分:1)
看起来你的第一句话中存在语法错误:
append((")
(2.追加)看起来很奇怪。
我认为应该是:append("(")
(还有一个"
)