Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.beanutils.converters
Class NumberConverter

    java.lang.Object
      |
      +--org.apache.commons.beanutils.converters.AbstractConverter
            |
            +--org.apache.commons.beanutils.converters.NumberConverter

All Implemented Interfaces:
  Converter

Direct Known Subclasses:
  BigDecimalConverter, BigIntegerConverter, ByteConverter, DoubleConverter, FloatConverter, IntegerConverter, LongConverter, ShortConverter

public class NumberConverter
extends AbstractConverter

`Converter` implementaion that handles conversion to and from java.lang.Number objects.

This implementation handles conversion for the following `java.lang.Number` types.

- `java.lang.Byte`
- `java.lang.Short`
- `java.lang.Integer`
- `java.lang.Long`
- `java.lang.Float`
- `java.lang.Double`
- `java.math.BigDecimal`
- `java.math.BigInteger`

### String Conversions (to and from)

This class provides a number of ways in which number conversions to/from Strings can be achieved:

- Using the default format for the default Locale, configure using:

- `setUseLocaleFormat(true)`

- Using the default format for a specified Locale, configure using:

- `setLocale(Locale)`

- Using a specified pattern for the default Locale, configure using:

- `setPattern(String)`

- Using a specified pattern for a specified Locale, configure using:

- `setPattern(String)`
- `setLocale(Locale)`

- If none of the above are configured the `toNumber(String)` method is used to convert from String to Number and the Number's `toString()` method used to convert from Number to String.

N.B.Patterns can only be specified used the standard pattern characters and NOT in localized form (see `java.text.SimpleDateFormat`). For example to cater for number styles used in Germany such as `0.000,00` the pattern is specified in the normal form `0,000.00` and the locale set to `Locale.GERMANY`.

Since:
  1.8.0
Version:
  $Revision: 555845 $ $Date: 2007-07-13 03:52:05 +0100 (Fri, 13 Jul 2007) $

Constructor Summary
`NumberConverter(java.lang.Class defaultType, boolean allowDecimals)` Construct a java.lang.Number Converter that throws a `ConversionException` if a error occurs.
`NumberConverter(java.lang.Class defaultType, boolean allowDecimals, java.lang.Object defaultValue)` Construct a `java.lang.Number` Converter that returns a default value if an error occurs.

Method Summary
`protected java.lang.String` | `convertToString(java.lang.Object value)` Convert an input Number object into a String.
`protected java.lang.Object` | `convertToType(java.lang.Class targetType, java.lang.Object value)` Convert the input object into a Number object of the specified type.
`java.util.Locale` | `getLocale()` Return the Locale for the Converter (or `null` if none specified).
`java.lang.String` | `getPattern()` Return the number format pattern used to convert Numbers to/from a `java.lang.String` (or `null` if none specified).
`boolean` | `isAllowDecimals()` Return whether decimals are allowed in the number.
`void` | `setLocale(java.util.Locale locale)` Set the Locale for the Converter.
`void` | `setPattern(java.lang.String pattern)` Set a number format pattern to use to convert Numbers to/from a `java.lang.String`.
`void` | `setUseLocaleFormat(boolean useLocaleFormat)` Set whether a format should be used to convert the Number.
`java.lang.String` | `toString()` Provide a String representation of this number converter.

Methods inherited from class org.apache.commons.beanutils.converters.AbstractConverter
`convert, convertArray, getDefault, getDefaultType, handleError, handleMissing, isUseDefault, setDefaultValue`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### NumberConverter

    public NumberConverter(java.lang.Class defaultType,
                           boolean allowDecimals)

  Construct a java.lang.Number Converter that throws a `ConversionException` if a error occurs.
  Parameters:
    `defaultType` - The default type this `Converter` handles
    `allowDecimals` - Indicates whether decimals are allowed

### NumberConverter

    public NumberConverter(java.lang.Class defaultType,
                           boolean allowDecimals,
                           java.lang.Object defaultValue)

  Construct a `java.lang.Number` Converter that returns a default value if an error occurs.
  Parameters:
    `defaultType` - The default type this `Converter` handles
    `allowDecimals` - Indicates whether decimals are allowed
    `defaultValue` - The default value to be returned

Method Detail

### isAllowDecimals

    public boolean isAllowDecimals()

  Return whether decimals are allowed in the number.
  Returns:
    Whether decimals are allowed in the number

### setUseLocaleFormat

    public void setUseLocaleFormat(boolean useLocaleFormat)

  Set whether a format should be used to convert the Number.
  Parameters:
    `useLocaleFormat` - `true` if a number format should be used.

### getPattern

    public java.lang.String getPattern()

  Return the number format pattern used to convert Numbers to/from a `java.lang.String` (or `null` if none specified).

  See `java.text.SimpleDateFormat` for details of how to specify the pattern.

  Returns:
    The format pattern.

### setPattern

    public void setPattern(java.lang.String pattern)

  Set a number format pattern to use to convert Numbers to/from a `java.lang.String`.

  See `java.text.SimpleDateFormat` for details of how to specify the pattern.

  Parameters:
    `pattern` - The format pattern.

### getLocale

    public java.util.Locale getLocale()

  Return the Locale for the Converter (or `null` if none specified).
  Returns:
    The locale to use for conversion

### setLocale

    public void setLocale(java.util.Locale locale)

  Set the Locale for the Converter.
  Parameters:
    `locale` - The locale to use for conversion

### convertToString

    protected java.lang.String convertToString(java.lang.Object value)
                                        throws java.lang.Throwable

  Convert an input Number object into a String.
  Overrides:
    `convertToString` in class `AbstractConverter`
  Parameters:
    `value` - The input value to be converted
  Returns:
    the converted String value.
  Throws:
    `java.lang.Throwable` - if an error occurs converting to a String

### convertToType

    protected java.lang.Object convertToType(java.lang.Class targetType,
                                             java.lang.Object value)
                                      throws java.lang.Throwable

  Convert the input object into a Number object of the specified type.
  Overrides:
    `convertToType` in class `AbstractConverter`
  Parameters:
    `targetType` - Data type to which this value should be converted.
    `value` - The input value to be converted.
  Returns:
    The converted value.
  Throws:
    `java.lang.Throwable` - if an error occurs converting to the specified type

### toString

    public java.lang.String toString()

  Provide a String representation of this number converter.
  Overrides:
    `toString` in class `AbstractConverter`
  Returns:
    A String representation of this number converter

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2007 The Apache Software Foundation. All Rights Reserved.