Thymeleaf中移除formatCurrency()的货币符号方法咨询
解决方法
直接给你几个可行的方案,按需选择:
方案一:改用数字格式化方法
既然不需要货币符号,直接用Thymeleaf的#numbers.formatDecimal来格式化数字就好,它专门处理数字格式,不会附带货币符号。比如你的例子要保留3位小数,代码可以写成:th:text="*{#numbers.formatDecimal(roomEntityList.get(0).price, 1, 3)}"参数说明:第一个是要格式化的数字,第二个是整数部分的最小位数(设为1可适配不同长度的整数),第三个是小数部分的固定位数(这里设为3匹配你的示例)。
方案二:替换掉货币符号
如果还是想用formatCurrency,可以直接在结果里替换掉多余的符号和空格。代码改成:th:text="*{#numbers.formatCurrency(roomEntityList.get(0).price).replace(' đ', '')}"注意原字符串里符号前带有空格,所以连空格一起替换,避免留下多余空格。
方案三:自定义格式化规则(进阶)
要是需要更灵活的控制,可以在后端定义自定义数字格式化工具类,处理好后再传到前端渲染,但这个相对麻烦,前面两个方案足够解决你的问题。
内容的提问来源于stack exchange,提问作者Reddot810
相关产品推荐
相关产品推荐

