CultureInfo.NumberFormat (Propiedad)
Ensamblado: mscorlib (en mscorlib.dll)
/** @property */ public NumberFormatInfo get_NumberFormat () /** @property */ public void set_NumberFormat (NumberFormatInfo value)
public function get NumberFormat () : NumberFormatInfo public function set NumberFormat (value : NumberFormatInfo)
Valor de propiedad
NumberFormatInfo que define el formato de presentación de números, moneda y porcentaje culturalmente apropiado.| Tipo de excepción | Condición |
|---|---|
| La propiedad está establecida en referencia de objeto null (Nothing en Visual Basic). |
|
| CultureInfo es para una referencia cultural neutra. |
|
| La propiedad NumberFormat o cualquiera de las propiedades de NumberFormatInfo se establecen y la clase CultureInfo es de sólo lectura. |
Una clase NumberFormatInfo sólo se puede crear para la referencia cultural invariable o para referencias culturales específicas, pero no para referencias culturales neutras.
Se han dividido las diferentes referencias culturales en tres grupos: culturas invariables, culturas neutras y culturas específicas.
La referencia cultural invariable no tiene en cuenta la referencia cultural. Se puede especificar la referencia cultural invariable por el nombre mediante una cadena vacía ("") o por el identificador de referencia cultural 0x007F. InvariantCulture recupera una instancia de la referencia cultural invariable. Se encuentra asociada al idioma inglés pero a ningún país o región. Se puede utilizar en casi todos los métodos del espacio de nombres de globalización que requieran una referencia cultural.
Una referencia cultural neutra es aquélla asociada a un idioma pero no a un país o región. Una referencia cultural específica es la que está asociada a un idioma y a un país o región. Por ejemplo, "fr" es una referencia cultural neutra y "fr-FR" es una referencia cultural específica. Tenga en cuenta que "zh-CHS" (chino simplificado) y "zh-CHT" (chino tradicional) son referencias culturales neutras.
Valores de reemplazo
El usuario puede reemplazar, si lo desea, algunos de los valores asociados a la referencia cultural actual de Windows en Configuración regional y de idioma del Panel de control. Por ejemplo, el usuario puede mostrar la fecha en un formato diferente o utilizar una moneda diferente a la predeterminada para la referencia cultural.
Si UseUserOverride es true y la referencia cultural especificada coincide con la referencia cultural actual de Windows, CultureInfo utiliza estos nuevos valores, incluida la configuración del usuario para las propiedades de la instancia de DateTimeFormatInfo devuelta por la propiedad DateTimeFormat, y las propiedades de la instancia de NumberFormatInfo devueltas por la propiedad NumberFormat. Si la configuración del usuario no es compatible con la referencia cultural asociada a CultureInfo (por ejemplo, si el calendario seleccionado no es uno de OptionalCalendars), el resultado de los métodos y los valores de las propiedades no se definen.
No se calculará el valor de las propiedades DateTimeFormat y NumberFormat hasta que se obtenga acceso a ellas. Si utiliza el Panel de control para cambiar la referencia cultural actual a una nueva referencia cultural mientras se ejecuta la aplicación, y después obtiene acceso a la propiedad DateTimeFormat o NumberFormat, la aplicación obtendrá los valores predeterminados para la nueva referencia cultural, no los valores de reemplazo de la referencia cultural original. Si desea conservar los valores de reemplazo de la referencia cultural actual original, obtenga acceso a las propiedades DateTimeFormat y NumberFormat antes de cambiar la referencia cultural actual.
En el siguiente ejemplo de código se muestra cómo CultureInfo.Clone también clona las instancias de DateTimeFormatInfo y NumberFormatInfo asociadas a la clase CultureInfo.
using System; using System.Globalization; public class SamplesCultureInfo { public static void Main() { // Creates and initializes a CultureInfo. CultureInfo myCI = new CultureInfo("en-US", false); // Clones myCI and modifies the DTFI and NFI instances associated with the clone. CultureInfo myCIclone = (CultureInfo) myCI.Clone(); myCIclone.DateTimeFormat.AMDesignator = "a.m."; myCIclone.DateTimeFormat.DateSeparator = "-"; myCIclone.NumberFormat.CurrencySymbol = "USD"; myCIclone.NumberFormat.NumberDecimalDigits = 4; // Displays the properties of the DTFI and NFI instances associated with the original and with the clone. Console.WriteLine( "DTFI/NFI PROPERTY\tORIGINAL\tMODIFIED CLONE" ); Console.WriteLine( "DTFI.AMDesignator\t{0}\t\t{1}", myCI.DateTimeFormat.AMDesignator, myCIclone.DateTimeFormat.AMDesignator ); Console.WriteLine( "DTFI.DateSeparator\t{0}\t\t{1}", myCI.DateTimeFormat.DateSeparator, myCIclone.DateTimeFormat.DateSeparator ); Console.WriteLine( "NFI.CurrencySymbol\t{0}\t\t{1}", myCI.NumberFormat.CurrencySymbol, myCIclone.NumberFormat.CurrencySymbol ); Console.WriteLine( "NFI.NumberDecimalDigits\t{0}\t\t{1}", myCI.NumberFormat.NumberDecimalDigits, myCIclone.NumberFormat.NumberDecimalDigits ); } } /* This code produces the following output. DTFI/NFI PROPERTY ORIGINAL MODIFIED CLONE DTFI.AMDesignator AM a.m. DTFI.DateSeparator / - NFI.CurrencySymbol $ USD NFI.NumberDecimalDigits 2 4 */
import System.* ;
import System.Globalization.* ;
public class SamplesCultureInfo
{
public static void main(String[] args)
{
// Creates and initializes a CultureInfo.
CultureInfo myCI = new CultureInfo("en-US", false);
// Clones myCI and modifies the DTFI and NFI instances
// associated with the clone.
CultureInfo myCIclone = ((CultureInfo)(myCI.Clone()));
myCIclone.get_DateTimeFormat().set_AMDesignator( "a.m.");
myCIclone.get_DateTimeFormat().set_DateSeparator ("-");
myCIclone.get_NumberFormat().set_CurrencySymbol("USD");
myCIclone.get_NumberFormat().set_NumberDecimalDigits(4);
// Displays the properties of the DTFI and NFI instances associated
// with the original and with the clone.
Console.WriteLine("DTFI/NFI PROPERTY\tORIGINAL\tMODIFIED CLONE");
Console.WriteLine("DTFI.AMDesignator\t{0}\t\t{1}",
myCI.get_DateTimeFormat().get_AMDesignator(),
myCIclone.get_DateTimeFormat().get_AMDesignator());
Console.WriteLine("DTFI.DateSeparator\t{0}\t\t{1}",
myCI.get_DateTimeFormat().get_DateSeparator(),
myCIclone.get_DateTimeFormat().get_DateSeparator());
Console.WriteLine("NFI.CurrencySymbol\t{0}\t\t{1}",
myCI.get_NumberFormat().get_CurrencySymbol(),
myCIclone.get_NumberFormat().get_CurrencySymbol());
Console.WriteLine("NFI.NumberDecimalDigits\t{0}\t\t{1}",
System.Convert.ToString(
myCI.get_NumberFormat().get_NumberDecimalDigits()),
System.Convert.ToString(
myCIclone.get_NumberFormat().get_NumberDecimalDigits()));
} //main
} //SamplesCultureInfo
/*
This code produces the following output.
DTFI/NFI PROPERTY ORIGINAL MODIFIED CLONE
DTFI.AMDesignator AM a.m.
DTFI.DateSeparator / -
NFI.CurrencySymbol $ USD
NFI.NumberDecimalDigits 2 4
*/
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition
.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.