public class L10NManager

  1. Object
  2. L10NManager

The localization manager allows adapting values for display in different locales thru parsing and formatting capabilities (similar to JavaSE’s DateFormat/NumberFormat). It also includes language/locale/currency related API’s similar to Locale/currency API’s from JavaSE.

The sample code below just lists the various capabilities of the API:

Form hi = new Form("L10N", new TableLayout(16, 2));
L10NManager l10n = L10NManager.getInstance();
hi.add("format(double)").add(l10n.format(11.11)).
    add("format(int)").add(l10n.format(33)).
    add("formatCurrency").add(l10n.formatCurrency(53.267)).
    add("formatDateLongStyle").add(l10n.formatDateLongStyle(new Date())).
    add("formatDateShortStyle").add(l10n.formatDateShortStyle(new Date())).
    add("formatDateTime").add(l10n.formatDateTime(new Date())).
    add("formatDateTimeMedium").add(l10n.formatDateTimeMedium(new Date())).
    add("formatDateTimeShort").add(l10n.formatDateTimeShort(new Date())).
    add("getCurrencySymbol").add(l10n.getCurrencySymbol()).
    add("getLanguage").add(l10n.getLanguage()).
    add("getLocale").add(l10n.getLocale()).
    add("isRTLLocale").add("" + l10n.isRTLLocale()).
    add("parseCurrency").add(l10n.formatCurrency(l10n.parseCurrency("33.77$"))).
    add("parseDouble").add(l10n.format(l10n.parseDouble("34.35"))).
    add("parseInt").add(l10n.format(l10n.parseInt("56"))).
    add("parseLong").add("" + l10n.parseLong("4444444"));
hi.show();

Constructors

protected L10NManager(String language, String locale)Instances of this class should be received via the Display class

Methods

public static L10NManager getInstance()Convenience method that invokes Display.getLocalizationManager()
public String getLanguage()Returns the current locale language as an ISO 639 two letter code
public void setLocale(String locale, String language)Forces the locale/language
public String format(int number)Format an integer number for this locale
public String format(double number)Format a double number for this locale
public String getShortMonthName(Date date)Gets the short month name in the current locale for the given date.
public String getLongMonthName(Date date)Gets the long month name in the current locale for the given date.
public String formatCurrency(double currency)Format a currency value
public String getCurrencySymbol()Returns the currency symbol for this locale
public String formatDateLongStyle(Date d)Formats a date in a long form e.g. Sunday January 1st 2001
public String formatDateShortStyle(Date d)Formats a date in a short form e.g. 1/1/2011
public String formatDateTime(Date d)Formats a date and a time in a default form e.g. 1/1/2011 10:00AM
public String formatDateTimeMedium(Date d)Formats a date and a time in a default form e.g. 1/1/2011 10:00AM
public String formatTime(Date d)Formats the time in a default form e.g. 10:00AM
public String formatDateTimeShort(Date d)Formats a date and a time in a default form e.g. 1/1/2011 10:00AM
public boolean isRTLLocale()Indicates whether the language is a right to left language
public String getLocale()Determines the locale (location) as an ISO 3166 country code
public String format(double number, int decimalPlaces)Formats a number as a String with a fixed number of decimal places
public double parseDouble(String localeFormattedDecimal)Parses a double based on locale conventions
public long parseLong(String localeFormattedLong)Parses a long based on locale conventions
public int parseInt(String localeFormattedInteger)Parses an integer based on locale conventions
public double parseCurrency(String amount)Parses the currency value

Inherited methods

Constructor details

L10NManager

protected L10NManager(String language, String locale)
Instances of this class should be received via the Display class

Method details

getInstance

public static L10NManager getInstance()
Convenience method that invokes Display.getLocalizationManager()

Returns

the L10NManager instance

getLanguage

public String getLanguage()
Returns the current locale language as an ISO 639 two letter code

Returns

iso language string

setLocale

public void setLocale(String locale, String language)
Forces the locale/language

Parameters

locale String
the new locale
language String
the language to use

format

public String format(int number)
Format an integer number for this locale

Parameters

number int
the number to format

Returns

a string representation of a number

format

public String format(double number)
Format a double number for this locale

Parameters

number double
the number to format

Returns

a string representation of a number

getShortMonthName

public String getShortMonthName(Date date)
Gets the short month name in the current locale for the given date.

Parameters

date Date
The date.

Returns

Short month name. E.g. Jan, Feb, etc..

getLongMonthName

public String getLongMonthName(Date date)
Gets the long month name in the current locale for the given date.

Parameters

date Date
The date.

Returns

Long month name. E.g. January, February, etc..

formatCurrency

public String formatCurrency(double currency)
Format a currency value

Parameters

currency double
the monetary value

Returns

a string representation of a number

getCurrencySymbol

public String getCurrencySymbol()
Returns the currency symbol for this locale

Returns

currency symbol

formatDateLongStyle

public String formatDateLongStyle(Date d)
Formats a date in a long form e.g. Sunday January 1st 2001

Parameters

d Date
the date

Returns

the long form string

formatDateShortStyle

public String formatDateShortStyle(Date d)
Formats a date in a short form e.g. 1/1/2011

Parameters

d Date
the date

Returns

the short form string

formatDateTime

public String formatDateTime(Date d)
Formats a date and a time in a default form e.g. 1/1/2011 10:00AM

Parameters

d Date
the date

Returns

the date and time

formatDateTimeMedium

public String formatDateTimeMedium(Date d)
Formats a date and a time in a default form e.g. 1/1/2011 10:00AM

Parameters

d Date
the date

Returns

the date and time

formatTime

public String formatTime(Date d)
Formats the time in a default form e.g. 10:00AM

Parameters

d Date
the date time object

Returns

the time as a String

formatDateTimeShort

public String formatDateTimeShort(Date d)
Formats a date and a time in a default form e.g. 1/1/2011 10:00AM

Parameters

d Date
the date

Returns

the date and time

isRTLLocale

public boolean isRTLLocale()
Indicates whether the language is a right to left language

Returns

true for bidi/rtl languages

getLocale

public String getLocale()
Determines the locale (location) as an ISO 3166 country code

Returns

the locale

format

public String format(double number, int decimalPlaces)
Formats a number as a String with a fixed number of decimal places

Parameters

number double
the number
decimalPlaces int
decimals

Returns

formatted string

parseDouble

public double parseDouble(String localeFormattedDecimal)
Parses a double based on locale conventions

Parameters

localeFormattedDecimal String
the locale formatted number

Returns

the parsed double

parseLong

public long parseLong(String localeFormattedLong)
Parses a long based on locale conventions

Parameters

localeFormattedLong String
the number

Returns

a long

parseInt

public int parseInt(String localeFormattedInteger)
Parses an integer based on locale conventions

Parameters

localeFormattedInteger String
the number

Returns

a parsed number

parseCurrency

public double parseCurrency(String amount)
Parses the currency value

Parameters

amount String
the amount

Returns

a numeric value for the currency