Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在jsf中以2点十进制格式显示数字_Java_Jsf 2_Richfaces_Converter - Fatal编程技术网

Java 在jsf中以2点十进制格式显示数字

Java 在jsf中以2点十进制格式显示数字,java,jsf-2,richfaces,converter,Java,Jsf 2,Richfaces,Converter,我正在使用JSF2和RichFaces3。在下图中,数字显示为数据库中的数字 但是如果有分数部分,我想将它们显示为6749395.20,如果没有分数部分,则显示为5095138.00 到目前为止,我已经尝试过类似的方法 事实上,我正在将它们全部显示在一起,但我已经尝试将它们作为所有可能的组合,包括类型、分组、最小分数位数和模式 为什么它不起作用?这是如何导致的,我如何解决它?如果值根本不是a,例如字符串,则可能发生这种情况。然后,对于它所表示的数据,基本上使用了错误的类型。要在Java中表

我正在使用JSF2和RichFaces3。在下图中,数字显示为数据库中的数字

但是如果有分数部分,我想将它们显示为
6749395.20
,如果没有分数部分,则显示为
5095138.00

到目前为止,我已经尝试过类似的方法


事实上,我正在将它们全部显示在一起,但我已经尝试将它们作为所有可能的组合,包括
类型
分组
最小分数位数
模式


为什么它不起作用?这是如何导致的,我如何解决它?

如果值根本不是a,例如
字符串,则可能发生这种情况。然后,对于它所表示的数据,基本上使用了错误的类型。要在Java中表示货币,应该使用。另外,确保数据库表中的类型正确,即它不应该是varchar,而应该是decimal

一旦您修复了数据类型,
将按照您告诉它的方式工作。请注意,
pattern
属性将覆盖
groupingUsed
minFractionDigits
。您应该使用
模式或其他模式。另外,
type=“number”
已经是默认值,因此可以将其删除

所以,要么使用



请注意,它们生成不同的格式。您可能希望将分组设置为
false

您还可以使用
type=“currency”
,然后它将根据
UIViewRoot\getLocale()
自动应用正确的模式:



另请参阅和javadoc。

您的转换器应按预期工作。
minFractionDigits=“2”
应该足够了。你在dataTable之外也尝试过同样的方法吗?伙计,我也在dataTable之外尝试过,但主要的问题是datatype,多亏了@BalusC,他帮了我。实际上在我的数据库中,它们是数字,我以字符串形式获取它们,然后尝试以某种模式将它们显示为数字。现在我将其更改为arraylist。现在,它正在显示正确和所需的格式。谢谢,伙计,非常感谢………..使用名称货币,是否有任何方法可以显示印度卢比符号和卢比,就像我可以显示美元($)符号一样。