org.gwtwidgets.client.util
Class NumberFormat

java.lang.Object
  extended by org.gwtwidgets.client.util.NumberFormat

public class NumberFormat
extends java.lang.Object

Title:
Decimal Format

Description:
This is a simple number formatting/ parsing class. Besides the simple number formatting it also interprets shortcuts for thousand (k) million (m) and billion (b).

This Number Format class was adapted from the public domain javascript class found at http://www.mredkj.com/javascript/nfdocs.html

Version:
$Revision: 0.0 $
Author:
Jason Essington

Field Summary
static int ARBITRARY_PRECISION
           
static java.lang.String BILLION
           
static java.lang.String COMMA
           
static int CUR_POS_LEFT_INSIDE
           
static int CUR_POS_LEFT_OUTSIDE
           
static int CUR_POS_RIGHT_INSIDE
           
static int CUR_POS_RIGHT_OUTSIDE
           
static char DASH
           
static char LEFT_PAREN
           
static java.lang.String MILLION
           
static int NEG_LEFT_DASH
           
static int NEG_PARENTHESIS
           
static int NEG_RIGHT_DASH
           
static java.lang.String PERIOD
           
static char RIGHT_PAREN
           
static java.lang.String THOUSAND
           
 
Method Summary
 java.lang.String format(java.lang.String num)
           
static NumberFormat getCurrencyInstance()
          Returns a currency instance of number format
static NumberFormat getCurrencyInstance(java.lang.String curSymbol)
          Returns a currency instance of number format that uses curSymbol as the currency symbol
static NumberFormat getCurrencyInstance(java.lang.String curSymbol, boolean useCommas)
          Returns a currency instance of number format that uses curSymbol as the currency symbol and either commas or periods as the thousands separator.
static NumberFormat getInstance()
          returns the default instance of NumberFormat
static NumberFormat getIntegerInstance()
          Returns an instance that formats numbers as integers.
static NumberFormat getPercentInstance()
           
 void isCurrency(boolean isC)
           
 void isPercentage(boolean pct)
           
 double parse(java.lang.String num)
           
static double parseDouble(java.lang.String num)
           
static double parseDouble(java.lang.String num, java.lang.String decimalChar)
          Static routine that attempts to create a double out of the supplied text.
 void setCurrencyPosition(int cp)
           
 void setCurrencySymbol(java.lang.String symbol)
           
 void setDecimalSeparator(java.lang.String separator)
           
 void setFixedPrecision(int places)
          Sets the number of fixed precision decimal places should be displayed.
 void setGroupingSeparator(java.lang.String separator)
           
 void setInputDecimalSeparator(java.lang.String val)
           
 void setNegativeFormat(int format)
           
 void setNegativeRed(boolean isRed)
           
 void setShowGrouping(boolean show)
           
 void setTruncate(boolean trunc)
          Causes the number to be truncated rather than rounded to its fixed precision.
protected  java.lang.String toFormatted(double num)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COMMA

public static final java.lang.String COMMA
See Also:
Constant Field Values

PERIOD

public static final java.lang.String PERIOD
See Also:
Constant Field Values

DASH

public static final char DASH
See Also:
Constant Field Values

LEFT_PAREN

public static final char LEFT_PAREN
See Also:
Constant Field Values

RIGHT_PAREN

public static final char RIGHT_PAREN
See Also:
Constant Field Values

THOUSAND

public static final java.lang.String THOUSAND
See Also:
Constant Field Values

MILLION

public static final java.lang.String MILLION
See Also:
Constant Field Values

BILLION

public static final java.lang.String BILLION
See Also:
Constant Field Values

CUR_POS_LEFT_OUTSIDE

public static final int CUR_POS_LEFT_OUTSIDE
See Also:
Constant Field Values

CUR_POS_LEFT_INSIDE

public static final int CUR_POS_LEFT_INSIDE
See Also:
Constant Field Values

CUR_POS_RIGHT_INSIDE

public static final int CUR_POS_RIGHT_INSIDE
See Also:
Constant Field Values

CUR_POS_RIGHT_OUTSIDE

public static final int CUR_POS_RIGHT_OUTSIDE
See Also:
Constant Field Values

NEG_LEFT_DASH

public static final int NEG_LEFT_DASH
See Also:
Constant Field Values

NEG_RIGHT_DASH

public static final int NEG_RIGHT_DASH
See Also:
Constant Field Values

NEG_PARENTHESIS

public static final int NEG_PARENTHESIS
See Also:
Constant Field Values

ARBITRARY_PRECISION

public static final int ARBITRARY_PRECISION
See Also:
Constant Field Values
Method Detail

getInstance

public static NumberFormat getInstance()
returns the default instance of NumberFormat

Returns:

getCurrencyInstance

public static NumberFormat getCurrencyInstance()
Returns a currency instance of number format

Returns:

getCurrencyInstance

public static NumberFormat getCurrencyInstance(java.lang.String curSymbol)
Returns a currency instance of number format that uses curSymbol as the currency symbol

Parameters:
curSymbol -
Returns:

getCurrencyInstance

public static NumberFormat getCurrencyInstance(java.lang.String curSymbol,
                                               boolean useCommas)
Returns a currency instance of number format that uses curSymbol as the currency symbol and either commas or periods as the thousands separator.

Parameters:
curSymbol - Currency Symbol
useCommas - true, uses commas as the thousands separator, false uses periods
Returns:

getIntegerInstance

public static NumberFormat getIntegerInstance()
Returns an instance that formats numbers as integers.

Returns:

getPercentInstance

public static NumberFormat getPercentInstance()

format

public java.lang.String format(java.lang.String num)

parse

public double parse(java.lang.String num)

parseDouble

public static double parseDouble(java.lang.String num,
                                 java.lang.String decimalChar)
Static routine that attempts to create a double out of the supplied text. This routine is a bit smarter than Double.parseDouble()

Parameters:
num -
Returns:

parseDouble

public static double parseDouble(java.lang.String num)

setInputDecimalSeparator

public void setInputDecimalSeparator(java.lang.String val)

setNegativeFormat

public void setNegativeFormat(int format)

setNegativeRed

public void setNegativeRed(boolean isRed)

setShowGrouping

public void setShowGrouping(boolean show)

setDecimalSeparator

public void setDecimalSeparator(java.lang.String separator)

setGroupingSeparator

public void setGroupingSeparator(java.lang.String separator)

isCurrency

public void isCurrency(boolean isC)

setCurrencySymbol

public void setCurrencySymbol(java.lang.String symbol)

setCurrencyPosition

public void setCurrencyPosition(int cp)

isPercentage

public void isPercentage(boolean pct)

setFixedPrecision

public void setFixedPrecision(int places)
Sets the number of fixed precision decimal places should be displayed. To use arbitrary precision, setFixedPrecision(NumberFormat.ARBITRARY_PRECISION)

Parameters:
places -

setTruncate

public void setTruncate(boolean trunc)
Causes the number to be truncated rather than rounded to its fixed precision.

Parameters:
trunc -

toFormatted

protected java.lang.String toFormatted(double num)


Copyright © 2006 Robert Hanson. All Rights Reserved.