1

我认为这将是一个自动的:

<rich:tooltip value="Download (#{doc.size div 1024 + 1} KB)" />

我需要计算一个文件用于下载的 KB 数(大小是整数)。在常规 Java 代码中,相同的计算会截断小数部分并返回剩余的整数。然而,在 JSF EL 中,没有截断除法,所以除法返回一个浮点数。

无论如何,它是如何在 EL 中完成的——即没有引入完成这项工作的 bean 方法?

4

1 回答 1

2

你可以fn:split()用来摆脱分数。

<ui:param name="size" value="#{fn:split(doc.size / 1024, '.')[0]}" />
<rich:tooltip value="Download (#{size + 1} KB)" />

小心:它取决于语言环境。在某些语言环境中,它是一个逗号,。我宁愿为这项工作创建/使用 EL 函数,就像OmniFacesof:formatBytes()所做的那样。

<rich:tooltip value="Download (#{of:formatBytes(doc.size)})" />
于 2012-06-05T00:17:11.770 回答