java - 如何将货币的欧元符号放在输出的末尾而不是开头?

标签 java jsf jakarta-ee currency

我正在使用 JSF 的 2.0 标准转换器标签将一些数字输出格式化为货币。 但是我有一个小问题,我不知道如何将欧元符号放在输出的末尾。

这是我做的:

<h:outputText value="#{payment.amount}">
    <f:convertNumber type="currency" currencySymbol="€"/>
</h:outputText>

我得到的输出是:

€15.55

但期望的输出是:

15.55 欧元

有人可以就如何解决这个小问题给我建议吗?

最佳答案

格式取决于 locale的观点。可以通过两种方式设置语言环境。

  1. 一般由 locale <f:view> 的属性标签:

    <f:view locale="#{bean.locale}">
    
  2. 特别是 locale <f:convertNumber> 的属性标签:

    <f:convertNumber type="currency" currencySymbol="€" locale="#{bean.locale}" />
    

不清楚您的目标语言环境,但使用 ,作为分数分隔符和 的位置之后,该货币在德国 ( de-DE )、法国 ( fr-FR ) 和葡萄牙 ( pt-PT ) 中是典型的。所以你需要这样设置它:

<f:convertNumber type="currency" currencySymbol="€" locale="pt-PT" />

它也可以从 java.util.Locale 获得bean 属性。

关于java - 如何将货币的欧元符号放在输出的末尾而不是开头?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7724534/

相关文章:

java - Swing JTable - 根据前一行的功能更改行的背景颜色

java - 如何查看jar文件中的源代码?

jsf - 将初始化参数从 JSF View 传递到后台托管 bean

jsf - 每个请求都会调用 init() 方法

java - 如何访问java类中WEB-INF文件夹下的文件

java - 如何更新方法?

java - 实体 JPA 中的 session 范围属性

jsf - 跨多个 View 持久化 ViewScoped bean

java - Servlet 中的构造函数和 Finalize() 方法

java - 从 XMLGregorianCalendar 到 Date/Calendar 增加了额外的时间/不需要的