Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se proporcionan comentarios adicionales a la documentación de referencia de esta API.
A diferencia de la CultureInfo clase , la RegionInfo clase no representa las preferencias del usuario y no depende del idioma o la referencia cultural del usuario.
Nombres asociados a un objeto RegionInfo
El nombre de un RegionInfo objeto es uno de los códigos de dos letras definidos en ISO 3166 para el país o región. El caso no es significativo. Name, TwoLetterISORegionName y ThreeLetterISORegionName devuelven los códigos adecuados en mayúsculas. Para obtener la lista actual de RegionInfo nombres, consulte ISO 3166: Códigos de país.
Creación de instancias de un objeto RegionInfo
Para crear una instancia de un objeto RegionInfo, pasar al constructor RegionInfo(String) un nombre de región de dos letras, como "US" para Estados Unidos, o el nombre de una cultura específica, como "en-US" para inglés (Estados Unidos). Sin embargo, se recomienda usar un nombre de referencia cultural específico en lugar de un nombre de región de dos letras, ya que un RegionInfo objeto no es completamente independiente del lenguaje. Varias RegionInfo propiedades, como DisplayName, NativeNamey CurrencyNativeName, dependen de los nombres de referencia cultural.
En el ejemplo siguiente se muestra la diferencia en los valores de propiedad de RegionInfo tres objetos que representan Bélgica. El primero se instancia a partir de un nombre de región (BE), mientras que el segundo y el tercero se instancian a partir de nombres culturales (fr-BE para francés de Bélgica y nl-BE para neerlandés de Bélgica, respectivamente). En el ejemplo se usa la reflexión para recuperar los valores de propiedad de cada RegionInfo objeto.
using System;
using System.Globalization;
using System.Reflection;
public class Example
{
public static void Main()
{
// Instantiate three Belgian RegionInfo objects.
RegionInfo BE = new RegionInfo("BE");
RegionInfo frBE = new RegionInfo("fr-BE");
RegionInfo nlBE = new RegionInfo("nl-BE");
RegionInfo[] regions = { BE, frBE, nlBE };
PropertyInfo[] props = typeof(RegionInfo).GetProperties(BindingFlags.Instance | BindingFlags.Public);
Console.WriteLine("{0,-30}{1,18}{2,18}{3,18}\n",
"RegionInfo Property", "BE", "fr-BE", "nl-BE");
foreach (var prop in props)
{
Console.Write("{0,-30}", prop.Name);
foreach (var region in regions)
Console.Write("{0,18}", prop.GetValue(region, null));
Console.WriteLine();
}
}
}
// The example displays the following output:
// RegionInfo Property BE fr-BE nl-BE
//
// Name BE fr-BE nl-BE
// EnglishName Belgium Belgium Belgium
// DisplayName Belgium Belgium Belgium
// NativeName België Belgique België
// TwoLetterISORegionName BE BE BE
// ThreeLetterISORegionName BEL BEL BEL
// ThreeLetterWindowsRegionName BEL BEL BEL
// IsMetric True True True
// GeoId 21 21 21
// CurrencyEnglishName Euro Euro Euro
// CurrencyNativeName euro euro euro
// CurrencySymbol € € €
// ISOCurrencySymbol EUR EUR EUR
En escenarios como los siguientes, use nombres de referencia cultural en lugar de nombres de país o región al crear una instancia de un RegionInfo objeto:
Cuando el nombre del idioma es de importancia principal. Por ejemplo, para el nombre de la
es-UScultura, probablemente querrá que la aplicación muestre "Estados Unidos" en lugar de "United States". El uso del nombre de país o región (US) solo produce "Estados Unidos" independientemente del idioma, de manera que se debe trabajar con el nombre de la cultura en su lugar.Cuando se deben tener en cuenta las diferencias de guion. Por ejemplo, el país o región
AZse ocupa de las culturas azerbaiyanas que tienen los nombresaz-Latn-AZyaz-Cyrl-AZ, y los scripts latinos y cirílicos pueden ser muy diferentes para este país o región.Cuando el mantenimiento de detalle es importante. Los valores devueltos por los miembros RegionInfo pueden diferir en función de si se ha creado una instancia del objeto RegionInfo mediante un nombre de referencia cultural o un nombre de región. Por ejemplo, en la tabla siguiente se enumeran las diferencias en los valores devueltos cuando se instancia un objeto RegionInfo mediante la región "US", la referencia cultural "en-US" y "es-US".
Miembro "ESTADOS UNIDOS" "en-US" "es-US" CurrencyNativeName US DollarUS DollarDólar de EE.UU.Name USen-USes-USNativeName United StatesUnited StatesEstados UnidosToString USen-USes-US