Number Format with Locale : Number Format « Data Type « Java






Number Format with Locale

Number Format with Locale
     

/*
 * Copyright (c) 1995 - 2008 Sun Microsystems, Inc.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 *   - Redistributions of source code must retain the above copyright
 *     notice, this list of conditions and the following disclaimer.
 *
 *   - Redistributions in binary form must reproduce the above copyright
 *     notice, this list of conditions and the following disclaimer in the
 *     documentation and/or other materials provided with the distribution.
 *
 *   - Neither the name of Sun Microsystems nor the names of its
 *     contributors may be used to endorse or promote products derived
 *     from this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
 * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

import java.text.NumberFormat;
import java.util.Locale;

public class NumberFormatDemo {

  static public void displayNumber(Locale currentLocale) {

    Integer quantity = new Integer(123456);
    Double amount = new Double(345987.246);
    NumberFormat numberFormatter;
    String quantityOut;
    String amountOut;

    numberFormatter = NumberFormat.getNumberInstance(currentLocale);
    quantityOut = numberFormatter.format(quantity);
    amountOut = numberFormatter.format(amount);
    System.out.println(quantityOut + "   " + currentLocale.toString());
    System.out.println(amountOut + "   " + currentLocale.toString());
  }

  static public void displayCurrency(Locale currentLocale) {

    Double currency = new Double(9876543.21);
    NumberFormat currencyFormatter;
    String currencyOut;

    currencyFormatter = NumberFormat.getCurrencyInstance(currentLocale);
    currencyOut = currencyFormatter.format(currency);
    System.out.println(currencyOut + "   " + currentLocale.toString());
  }

  static public void displayPercent(Locale currentLocale) {

    Double percent = new Double(0.75);
    NumberFormat percentFormatter;
    String percentOut;

    percentFormatter = NumberFormat.getPercentInstance(currentLocale);
    percentOut = percentFormatter.format(percent);
    System.out.println(percentOut + "   " + currentLocale.toString());
  }

  static public void main(String[] args) {

    Locale[] locales = { new Locale("fr", "FR"), new Locale("de", "DE"),
        new Locale("en", "US") };

    for (int i = 0; i < locales.length; i++) {
      System.out.println();
      displayNumber(locales[i]);
      displayCurrency(locales[i]);
      displayPercent(locales[i]);
    }
  }

}

   
    
    
    
    
  








Related examples in the same category

1.The Uppercase Option
2.Using the Format Flags
3.The Format Specifiers
4.NumberFormat with Constant Locale UsageNumberFormat with Constant Locale Usage
5.Number Format by locale
6.demonstrates the %n and %% format specifiers:
7.demonstrates the minimum field-width specifier by applying it to the %f conversion:
8.Create a table of squares and cubes.
9.precision modifier: Format 4 decimal places
10.precision modifier: Format to 2 decimal places in a 16 character field
11.precision modifier: Display at most 15 characters in a string
12.left justification: Right justify by default
13.left justification: left justify
14.Demonstrate the space format specifiers.
15.Using an Argument Index
16.the NumberFormat object is created once when the program starts.
17.Default rounding mode
18.RoundingMode.HALF_DOWN
19.RoundingMode.FLOOR
20.RoundingMode.CEILING
21.Format a number our way and the default way
22.Format a number to currencyFormat a number to currency
23.Add leading zeroes to a number
24.Decimal Format DemoDecimal Format Demo
25.Parse number with NumberFormat and Locale
26.Formatting and Parsing a Locale-Specific Percentage
27.Format a number with DecimalFormat
28.Parse a number with NumberFormat and Locale.CANADA
29.Format a number with leading zeroes
30.Format a number for a locale
31.Formatting and Parsing a Number for a Locale
32.Display numbers in scientific notation
33.Format for GERMAN locale
34.Format for the default locale
35.Displaying numbers with commas
36.Formatting a Number in Exponential Notation
37.Using only 0's to the left of E forces no decimal point
38.Parse a GERMAN number
39.Formatting and Parsing Locale-Specific Currency
40.Parse a number for a locale
41.Use grouping to display a number
42.Number format viewer
43.A number formatter for logarithmic values. This formatter does not support parsing.
44.A custom number formatter that formats numbers as hexadecimal strings.
45.NumberFormat and locale
46.PrintfFormat allows the formatting of an array of objects embedded within a string.
47.Parse number with format