[ 
https://issues.apache.org/jira/browse/SANDBOX-461?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Adrian Crum closed SANDBOX-461.
-------------------------------

    Resolution: Fixed

Fixed in revision 1530794.

If you want to change converter behavior, then you can replace the default 
converter with your own.


> FloatToString
> -------------
>
>                 Key: SANDBOX-461
>                 URL: https://issues.apache.org/jira/browse/SANDBOX-461
>             Project: Commons Sandbox
>          Issue Type: Bug
>          Components: Convert
>    Affects Versions: Nightly Builds
>            Reporter: Brad Davis
>            Assignee: Adrian Crum
>
> FloatToString seems to return unexpected results.
> Test Case: 
> @Test
>       public void testFloatFormat() throws Exception {
>               Float testFloat = new Float(100.1878783420);
>               FloatToString fts = new FloatToString();
>               
>               String format = "###.##";
>               String v1 = fts.convert(new Float(100.1878783420), Locale.US, 
> TimeZone.getDefault(), format);
>               
>               NumberFormat nf = new DecimalFormat("###.##");
>               String v2 = nf.format(testFloat.floatValue());
>               
>               Assert.assertEquals("100.19", v1);
>               Assert.assertEquals("100.19", v2);
>               
>               
>       }
> This class may be the cause:
> public static abstract class AbstractNumberConverter<S, T> extends 
> AbstractLocalizedConverter<S, T> {
> It seems to drop the "format" string.
> Also, the method: 
> protected String format(Float obj, NumberFormat nf) throws 
> ConversionException {
> Should be made public to work around the issue if you want to , for example, 
> provide the DecimalFormat to the converter.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to