我认为这将是一个自动的:
<rich:tooltip value="Download (#{doc.size div 1024 + 1} KB)" />
我需要计算一个文件用于下载的 KB 数(大小是整数)。在常规 Java 代码中,相同的计算会截断小数部分并返回剩余的整数。然而,在 JSF EL 中,没有截断除法,所以除法返回一个浮点数。
无论如何,它是如何在 EL 中完成的——即没有引入完成这项工作的 bean 方法?
你可以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)})" />