[
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)