La classe NumberFormatter consente di formattare valori numerici (di tipo int, uint o Number) in base alle convenzioni di impostazioni internazionali specifiche.
Nell'esempio seguente viene mostrato il modo più semplice per formattare un numero utilizzando le proprietà di formattazione predefinite fornite dal sistema operativo dell'utente:
var nf:NumberFormatter = new NumberFormatter(LocaleID.DEFAULT);
trace(nf.formatNumber(-123456.789))
Il risultato varia in base alle impostazioni internazioni dell'utente e alle preferenze utente. Ad esempio, se le impostazioni internazionali dell'utente sono fr-FR il valore formattato sarà:
-123.456,789
Se desiderate formattare un numero per impostazioni internazionali specifiche, indipendentemente dalle impostazioni dell'utente, impostate il nome delle impostazioni internazionali in maniera specifica. Ad esempio:
var nf:NumberFormatter = new NumberFormatter("de-CH");
trace(nf.formatNumber(-123456.789));
Il risultato in questo caso è:
-123'456.789
Il metodo formatNumber() accetta un Numero come parametro. La classe NumberFormatter dispone anche di un metodo formatInt() che accetta un int come input, nonché di un metodo formatUint() che accetta un uint.
Potete controllare in maniera esplicita la logica di formattazione impostando proprietà della classe NumberFormatter, come mostrato in questo esempio:
var nf:NumberFormatter = new NumberFormatter("de-CH");
nf.negativeNumberFormat = 0;
nf.fractionalDigits = 5;
nf.trailingZeros = true;
nf.decimalSeparator = ",";
nf.useGrouping = false;
trace(nf.formatNumber(-123456.789)); //(123456.78900)
Questo esempio crea innanzitutto un nuovo oggetto NumberFormatter e quindi:
-
imposta il formato numeri negativi per utilizzare parentesi (come nelle applicazioni finanziarie);
-
imposta il numero di cifre dopo il separatore decimale su 5;
-
specifica che gli zero finali devono essere utilizzati per assicurare cinque posizioni decimali;
-
imposta il separatore decimale su una virgola;
-
indica al formattatore di non utilizzare nessun separatore di gruppo.
Nota:
quando alcune di queste proprietà cambiano, il formato del numero risultante non corrisponde più al formato preferito per le impostazioni internazionali specificate. Utilizzate alcune di queste proprietà solo quando la dipendenza dalle impostazioni internazionali non è importante; quando è necessario il controllo dettagliato su un singolo aspetto del formato, ad esempio il numero di zero finali; o quando l'utente richiede direttamente la modifica, ad esempio, tramite il pannello di controllo di Windows.