首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按地区和货币编制货币价值

按地区和货币编制货币价值
EN

Stack Overflow用户
提问于 2012-11-12 15:54:39
回答 1查看 6.5K关注 0票数 7

可能重复: formatting a string to a currency format in jasper report

我正在使用JasperReports创建一个发票文档,它需要本地化并支持多种货币。

因此,例如,当报告是法语时,货币值应该显示为1,00 €1,00 $,而在美国英语中,货币值应该是€ 0.02$ 1.00

至关重要的是,发票货币通常与地区货币不同,在某些情况下,同一文档中可能使用多种货币。

我尝试使用包含的格式化工具:<textField pattern="¤ #,##0.00">,但是这并不会根据地区改变格式,我也找不到一种改变货币的方法(它只是用报表的地区货币符号替换¤,所以在这两方面都是错误的)。

我在这里看了一下:How do I format a Currency for a Locale in Java,但我还没有想出在我的报告中使用这个方法的方法。

谢谢!

我终于想出来了,但既然mods锁定了这个问题,那应该是重复的--但它不是.总之,这里有一个答案:

代码语言:javascript
复制
<variable name="CURRENCY" class="java.util.Currency">
     <variableExpression><![CDATA[Currency.getInstance($F{currencyCode})]]></variableExpression>
</variable>

<variable name="CURRENCY_FORMAT" class="java.text.NumberFormat">
    <variableExpression><![CDATA[
NumberFormat.getCurrencyInstance($P{REPORT_LOCALE});
((NumberFormat)value).setCurrency($V{CURRENCY})
]]></variableExpression>
</variable>

<textField>
     <reportElement x="179" y="58" width="89" height="15"/>
     <textFieldExpression><![CDATA[$V{CURRENCY_FORMAT}.format($F{revenueCents}/100)]]></textFieldExpression>
</textField>
EN

回答 1

Stack Overflow用户

发布于 2012-11-12 16:03:18

ireport中有两个参数REPORT_LOCALE和XML_LOCALE可以帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13346939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档