Comparteix a través de


CultureInfo Constructores

Definición

Inicializa una nueva instancia de la clase CultureInfo.

Sobrecargas

CultureInfo(Int32)

Inicializa una nueva instancia de la clase CultureInfo de acuerdo con la referencia cultural especificada por el identificador de dicha referencia.

CultureInfo(String)

Inicializa una nueva instancia de la clase CultureInfo de acuerdo con la referencia cultural especificada mediante un nombre.

CultureInfo(Int32, Boolean)

Inicializa una nueva instancia de la CultureInfo clase basándose en la referencia cultural especificada por el identificador de referencia cultural y en un valor que especifica si se debe usar la configuración de referencia cultural seleccionada por el usuario de Windows.

CultureInfo(String, Boolean)

Inicializa una nueva instancia de la CultureInfo clase basándose en la referencia cultural especificada por nombre y en un valor que especifica si se debe usar la configuración de referencia cultural seleccionada por el usuario de Windows.

CultureInfo(Int32)

Source:
CultureInfo.cs
Source:
CultureInfo.cs
Source:
CultureInfo.cs

Inicializa una nueva instancia de la clase CultureInfo de acuerdo con la referencia cultural especificada por el identificador de dicha referencia.

public:
 CultureInfo(int culture);
public CultureInfo (int culture);
new System.Globalization.CultureInfo : int -> System.Globalization.CultureInfo
Public Sub New (culture As Integer)

Parámetros

culture
Int32

Identificador CultureInfo predefinido, propiedad LCID de un objeto CultureInfo existente, o identificador de referencia cultural solo de Windows.

Excepciones

culture es menor que cero.

culture no es un identificador de referencia cultural válido. Vea la sección Notas para los llamadores para obtener más información.

Comentarios

Los identificadores de referencia cultural predefinidos para las referencias culturales disponibles en el sistema Windows se muestran en la columna Etiqueta deidioma de la lista de nombres de idioma o región admitidos por Windows. Los nombres de las referencias culturales siguen el estándar definido por BCP 47.

En la mayoría de los casos, el culture parámetro se asigna al identificador de configuración regional de compatibilidad con idiomas nacionales (NLS) correspondiente. El valor del culture parámetro se convierte en el valor de la LCID propiedad del nuevo CultureInfo.

Se recomienda llamar al constructor CultureInfo.CultureInfode nombres de configuración regional , ya que los nombres de configuración regional son preferibles a los LCID. En el caso de las configuraciones regionales personalizadas, se requiere un nombre de configuración regional.

El usuario puede optar por invalidar algunos de los valores asociados a la referencia cultural actual de Windows a través de la parte de opciones regionales y de idioma del Panel de control. Por ejemplo, el usuario podría optar por mostrar la fecha en un formato diferente o usar una moneda distinta del valor predeterminado de la referencia cultural. Si el identificador de referencia cultural especificado coincide con el identificador de referencia cultural de la referencia cultural actual de Windows, este constructor crea un CultureInfo objeto que usa esas invalidaciones, incluida la configuración de usuario para las propiedades de la DateTimeFormatInfo instancia devuelta por la DateTimeFormat propiedad y las propiedades de la NumberFormatInfo instancia devuelta por la NumberFormat propiedad . 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 los OptionalCalendars) los resultados de los métodos y los valores de las propiedades no están definidos.

Si el identificador de referencia cultural especificado no coincide con el identificador de la referencia cultural actual de Windows, este constructor crea un CultureInfo objeto que usa los valores predeterminados para la referencia cultural especificada.

La UseUserOverride propiedad siempre se establece trueen .

Por ejemplo, supongamos que árabe (Arabia Saudí) es la referencia cultural actual de Windows y que el usuario ha cambiado el calendario de Hijri a Gregoriano.

Para las referencias culturales que usan el euro, .NET Framework y Windows XP establecen la moneda predeterminada como euro. Sin embargo, las versiones anteriores de Windows no lo hacen. Por lo tanto, si el usuario de una versión anterior de Windows no ha cambiado la configuración de moneda a través de la parte de opciones regionales y de idioma del Panel de control, la moneda podría ser incorrecta. Para usar la configuración predeterminada de .NET Framework para la moneda, la aplicación debe usar una CultureInfo sobrecarga de constructor que acepte un useUserOverride parámetro y establézcalo en false.

Nota

Para la compatibilidad con versiones anteriores, una referencia cultural construida con un culture parámetro de 0x0004 o 0x7c04 tendrá una Name propiedad de zh-CHS o zh-CHT, respectivamente. En su lugar, debe preferir construir la referencia cultural mediante los nombres de referencia cultural estándar actuales de zh-Hans o zh-Hant, a menos que tenga un motivo para usar los nombres anteriores.

Notas a los autores de las llamadas

.NET Framework 3.5 y versiones anteriores inician si ArgumentExceptionculture no es un identificador de referencia cultural válido. A partir de .NET Framework 4, este constructor produce una CultureNotFoundExceptionexcepción . A partir de aplicaciones que se ejecutan en .NET Framework 4 o posterior en Windows 7 o posterior, el método intenta recuperar un CultureInfo objeto cuyo identificador es culture del sistema operativo; si el sistema operativo no admite esa referencia cultural, el método produce una CultureNotFoundException excepción.

En .NET 6 y versiones posteriores, se produce una CultureNotFoundException excepción si la aplicación se ejecuta en un entorno en el que está habilitado el modo invariable de globalización, por ejemplo, algunos contenedores de Docker y una referencia cultural distinta de la referencia cultural invariable.

Consulte también

Se aplica a

CultureInfo(String)

Source:
CultureInfo.cs
Source:
CultureInfo.cs
Source:
CultureInfo.cs

Inicializa una nueva instancia de la clase CultureInfo de acuerdo con la referencia cultural especificada mediante un nombre.

public:
 CultureInfo(System::String ^ name);
public CultureInfo (string name);
new System.Globalization.CultureInfo : string -> System.Globalization.CultureInfo
Public Sub New (name As String)

Parámetros

name
String

Nombre de CultureInfo predefinido, Name de un CultureInfo existente, o nombre de referencia cultural solo de Windows. name no distingue entre mayúsculas y minúsculas.

Excepciones

name es null.

name no es un nombre de referencia cultural válido. Para obtener más información, consulte la sección Notas para los autores de llamada.

Ejemplos

En el ejemplo siguiente se recupera la referencia cultural actual. Si es algo distinto de la referencia cultural francesa (Francia), llama al CultureInfo(String) constructor para crear una instancia de un CultureInfo objeto que representa la referencia cultural francesa (Francia) y la convierte en la referencia cultural actual. De lo contrario, crea una instancia de un CultureInfo objeto que representa la referencia cultural francesa (Luxemburgo) y la convierte en la referencia cultural actual.

using System;
using System.Globalization;

public class ChangeEx1
{
    public static void Main()
    {
        CultureInfo current = CultureInfo.CurrentCulture;
        Console.WriteLine("The current culture is {0}", current.Name);
        CultureInfo newCulture;
        if (current.Name.Equals("fr-FR"))
            newCulture = new CultureInfo("fr-LU");
        else
            newCulture = new CultureInfo("fr-FR");

        CultureInfo.CurrentCulture = newCulture;
        Console.WriteLine("The current culture is now {0}",
                          CultureInfo.CurrentCulture.Name);
    }
}
// The example displays output like the following:
//     The current culture is en-US
//     The current culture is now fr-FR
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim current As CultureInfo = CultureInfo.CurrentCulture
      Console.WriteLine("The current culture is {0}", current.Name)
      Dim newCulture As CultureInfo
      If current.Name.Equals("fr-FR") Then
         newCulture = New CultureInfo("fr-LU")
      Else
         newCulture = new CultureInfo("fr-FR")
      End If

      CultureInfo.CurrentCulture = newCulture
      Console.WriteLine("The current culture is now {0}",
                        CultureInfo.CurrentCulture.Name)
   End Sub
End Module
' The example displays output like the following:
'     The current culture is en-US
'     The current culture is now fr-FR

Comentarios

Para obtener una lista de nombres de referencia cultural predefinidos en sistemas Windows, consulte la columna Etiqueta de idioma en la lista de nombres de idioma o región admitidos por Windows. Los nombres de las referencias culturales siguen el estándar definido por BCP 47. Además, a partir de Windows 10, name puede ser cualquier etiqueta de idioma BCP-47 válida.

Si name es String.Empty, el constructor crea una instancia de la referencia cultural invariable; esto equivale a recuperar el valor de la InvariantCulture propiedad .

El usuario puede optar por invalidar algunos de los valores asociados a la referencia cultural actual de Windows a través de la parte de opciones regionales y de idioma del Panel de control. Por ejemplo, el usuario podría optar por mostrar la fecha en un formato diferente o usar una moneda distinta del valor predeterminado de la referencia cultural. Si el identificador de referencia cultural asociado a coincide con name el identificador de referencia cultural de la referencia cultural actual de Windows, este constructor crea un CultureInfo objeto que usa esas invalidaciones, incluida la configuración de usuario para las propiedades de la DateTimeFormatInfo instancia devuelta por la DateTimeFormat propiedad y las propiedades de la NumberFormatInfo instancia devuelta por la NumberFormat propiedad . Si la configuración de usuario no es compatible con la referencia cultural asociada a CultureInfo, por ejemplo, si el calendario seleccionado no es uno de los OptionalCalendars, los resultados de los métodos y los valores de las propiedades no están definidos.

Si el identificador de referencia cultural asociado a name no coincide con el identificador de referencia cultural de la referencia cultural actual de Windows, este constructor crea un CultureInfo objeto que usa los valores predeterminados para la referencia cultural especificada.

La UseUserOverride propiedad siempre se establece trueen .

Por ejemplo, supongamos que árabe (Arabia Saudita) es la referencia cultural actual de Windows y el usuario cambió el calendario de Hijri a Gregoriano:

La LCID propiedad del nuevo CultureInfo se establece en el identificador de referencia cultural asociado al nombre especificado.

Notas a los autores de las llamadas

.NET Framework 3.5 y versiones anteriores inician si ArgumentExceptionname no es un nombre de referencia cultural válido. A partir de .NET Framework 4, este constructor produce una CultureNotFoundExceptionexcepción . A partir de las aplicaciones que se ejecutan en .NET Framework 4 o posterior en Windows 7 o posterior, el método intenta recuperar un CultureInfo objeto cuyo identificador es name del sistema operativo; si el sistema operativo no admite esa referencia cultural y, si name no es el nombre de una referencia cultural complementaria o de reemplazo, el método produce una CultureNotFoundException excepción.

En .NET 6 y versiones posteriores, se produce una CultureNotFoundException excepción si la aplicación se ejecuta en un entorno en el que está habilitado el modo invariable de globalización, por ejemplo, algunos contenedores de Docker y una referencia cultural distinta de la referencia cultural invariable.

Consulte también

Se aplica a

CultureInfo(Int32, Boolean)

Source:
CultureInfo.cs
Source:
CultureInfo.cs
Source:
CultureInfo.cs

Inicializa una nueva instancia de la CultureInfo clase basándose en la referencia cultural especificada por el identificador de referencia cultural y en un valor que especifica si se debe usar la configuración de referencia cultural seleccionada por el usuario de Windows.

public:
 CultureInfo(int culture, bool useUserOverride);
public CultureInfo (int culture, bool useUserOverride);
new System.Globalization.CultureInfo : int * bool -> System.Globalization.CultureInfo
Public Sub New (culture As Integer, useUserOverride As Boolean)

Parámetros

culture
Int32

Identificador CultureInfo predefinido, propiedad LCID de un objeto CultureInfo existente, o identificador de referencia cultural solo de Windows.

useUserOverride
Boolean

true para usar la configuración de referencia cultural seleccionada por el usuario (solo Windows); false para usar la configuración de referencia cultural predeterminada.

Excepciones

culture es menor que cero.

culture no es un identificador de referencia cultural válido. Vea la sección Notas para los llamadores para obtener más información.

Comentarios

Los identificadores de referencias culturales predefinidos que están disponibles en los sistemas Windows se enumeran en la columna Etiqueta de idioma de la lista de nombres de idioma o región admitidos por Windows. Los nombres de las referencias culturales siguen el estándar definido por BCP 47.

En la mayoría de los casos, el culture parámetro se asigna al identificador de configuración regional de compatibilidad con idiomas nacionales (NLS) correspondiente. El valor del culture parámetro se convierte en el valor de la LCID propiedad del nuevo CultureInfo.

Se recomienda llamar al constructor CultureInfo.CultureInfode nombres de configuración regional , ya que los nombres de configuración regional son preferibles a los LCID. En el caso de las configuraciones regionales personalizadas, se requiere un nombre de configuración regional.

El usuario puede optar por invalidar algunos de los valores asociados a la referencia cultural actual de Windows a través de la parte de opciones regionales y de idioma del Panel de control. Por ejemplo, el usuario podría optar por mostrar la fecha en un formato diferente o usar una moneda distinta del valor predeterminado de la referencia cultural.

Normalmente, las aplicaciones no deberían permitir invalidaciones de usuario. No permitir invalidaciones no garantiza la estabilidad de los datos. Para obtener más información, consulte la entrada de blog Datos de referencia cultural no se debe considerar estable (excepto invariante).

Si la UseUserOverride propiedad se establece true en y el identificador de referencia cultural especificado coincide con el identificador de la referencia cultural actual de Windows, este constructor crea un CultureInfo objeto que usa esas invalidaciones, incluida la configuración de usuario para las propiedades de la DateTimeFormatInfo instancia devuelta por la DateTimeFormat propiedad y las propiedades de la NumberFormatInfo instancia devuelta por la NumberFormat propiedad . Si la configuración de usuario no es compatible con la referencia cultural asociada a CultureInfo, por ejemplo, si el calendario seleccionado no es uno de los OptionalCalendars, los resultados de los métodos y los valores de las propiedades no están definidos.

De lo contrario, este constructor crea un CultureInfo objeto que usa los valores predeterminados para la referencia cultural especificada.

El valor del useUserOverride parámetro se convierte en el valor de la UseUserOverride propiedad .

Por ejemplo, supongamos que árabe (Arabia Saudita) es la referencia cultural actual de Windows y que el usuario ha cambiado el calendario de Hijri a Gregoriano.

Para las referencias culturales que usan el euro, .NET Framework y Windows XP establecen la moneda predeterminada como euro. Sin embargo, las versiones anteriores de Windows no lo hacen. Por lo tanto, si el usuario de una versión anterior de Windows no ha cambiado la configuración de moneda a través de la parte de opciones regionales y de idioma del Panel de control, la moneda podría ser incorrecta. Para usar la configuración predeterminada de .NET Framework para la moneda, la aplicación debe establecer el useUserOverride parámetro falseen .

Nota

Para la compatibilidad con versiones anteriores, una referencia cultural construida con un culture parámetro de 0x0004 o 0x7c04 tendrá una Name propiedad de zh-CHS o zh-CHT, respectivamente. En su lugar, debe preferir construir la referencia cultural con los nombres de referencia cultural estándar actuales de zh-Hans o zh-Hant, a menos que tenga un motivo para usar los nombres anteriores.

Notas a los autores de las llamadas

.NET Framework 3.5 y versiones anteriores inician si ArgumentExceptionculture no es un identificador de referencia cultural válido. A partir de .NET Framework 4, este constructor produce una CultureNotFoundExceptionexcepción . A partir de aplicaciones que se ejecutan en .NET Framework 4 o posterior en Windows 7 o posterior, el método intenta recuperar un CultureInfo objeto cuyo identificador es culture del sistema operativo; si el sistema operativo no admite esa referencia cultural, el método produce una CultureNotFoundException excepción.

En .NET 6 y versiones posteriores, se produce una CultureNotFoundException excepción si la aplicación se ejecuta en un entorno en el que está habilitado el modo invariable de globalización, por ejemplo, algunos contenedores de Docker y una referencia cultural distinta de la referencia cultural invariable.

Consulte también

Se aplica a

CultureInfo(String, Boolean)

Source:
CultureInfo.cs
Source:
CultureInfo.cs
Source:
CultureInfo.cs

Inicializa una nueva instancia de la CultureInfo clase basándose en la referencia cultural especificada por nombre y en un valor que especifica si se debe usar la configuración de referencia cultural seleccionada por el usuario de Windows.

public:
 CultureInfo(System::String ^ name, bool useUserOverride);
public CultureInfo (string name, bool useUserOverride);
new System.Globalization.CultureInfo : string * bool -> System.Globalization.CultureInfo
Public Sub New (name As String, useUserOverride As Boolean)

Parámetros

name
String

Nombre de CultureInfo predefinido, Name de un CultureInfo existente, o nombre de referencia cultural solo de Windows. name no distingue entre mayúsculas y minúsculas.

useUserOverride
Boolean

true para usar la configuración de referencia cultural seleccionada por el usuario (solo Windows); false para usar la configuración de referencia cultural predeterminada.

Excepciones

name es null.

name no es un nombre de referencia cultural válido. Vea la sección Notas para los llamadores para obtener más información.

Comentarios

Para obtener una lista de nombres de referencia cultural predefinidos, consulte la columna Etiqueta de idioma en la lista de nombres de idioma o región admitidos por Windows. Los nombres de las referencias culturales siguen el estándar definido por BCP 47. Además, a partir de Windows 10, name puede ser cualquier etiqueta de idioma BCP-47 válida.

Si name es String.Empty, el constructor crea una instancia de la referencia cultural invariable; esto equivale a recuperar el valor de la InvariantCulture propiedad .

El usuario puede optar por invalidar algunos de los valores asociados a la referencia cultural actual de Windows a través de la parte de opciones regionales y de idioma del Panel de control. Por ejemplo, el usuario podría optar por mostrar la fecha en un formato diferente o usar una moneda distinta de la predeterminada para la referencia cultural.

Normalmente, las aplicaciones no deben permitir invalidaciones de usuario. La denegación de invalidaciones no garantiza la estabilidad de los datos. Para obtener más información, consulte la entrada de blog Datos de referencia cultural no deben considerarse estables (excepto invariante).

Si la UseUserOverride propiedad se establece true en y el identificador de referencia cultural asociado al nombre de referencia cultural especificado coincide con el identificador de referencia cultural de la referencia cultural actual de Windows, este constructor crea un CultureInfo que usa esas invalidaciones, incluida la configuración de usuario para las propiedades de la DateTimeFormatInfo instancia devuelta por la DateTimeFormat propiedad y las propiedades de la NumberFormatInfo instancia devuelta por la NumberFormat propiedad . Si la configuración de usuario no es compatible con la referencia cultural asociada a CultureInfo, por ejemplo, si el calendario seleccionado no es uno de los OptionalCalendars, los resultados de los métodos y los valores de las propiedades no están definidos.

De lo contrario, este constructor crea un CultureInfo objeto que usa los valores predeterminados para la referencia cultural especificada.

El valor del useUserOverride parámetro se convierte en el valor de la UseUserOverride propiedad .

Por ejemplo, supongamos que árabe (Arabia Saudita) es la referencia cultural actual de Windows y el usuario cambió el calendario de Hijri a Gregoriano.

La LCID propiedad del nuevo CultureInfo se establece en el identificador de referencia cultural asociado al nombre especificado.

Para las referencias culturales que usan el euro, .NET Framework y Windows XP establecen la moneda predeterminada como euro. Sin embargo, las versiones anteriores de Windows no lo hacen. Por lo tanto, si el usuario de una versión anterior de Windows no ha cambiado la configuración de moneda a través de la parte de opciones regionales y de idioma del Panel de control, la moneda podría ser incorrecta. Para usar la configuración predeterminada de .NET Framework para la moneda, la aplicación debe establecer el useUserOverride parámetro falseen .

Notas a los autores de las llamadas

.NET Framework 3.5 y versiones anteriores inician si ArgumentExceptionname no es un nombre de referencia cultural válido. A partir de .NET Framework 4, este constructor produce un CultureNotFoundException. A partir de las aplicaciones que se ejecutan en .NET Framework 4 o posterior en Windows 7 o posterior, el método intenta recuperar un CultureInfo objeto cuyo identificador es name del sistema operativo; si el sistema operativo no admite esa referencia cultural y, si name no es el nombre de una referencia cultural complementaria o de reemplazo, el método produce una CultureNotFoundException excepción.

En .NET 6 y versiones posteriores, se produce una CultureNotFoundException excepción si la aplicación se ejecuta en un entorno en el que se habilita el modo invariable de globalización, por ejemplo, algunos contenedores de Docker y una referencia cultural distinta de la referencia cultural invariable.

Consulte también

Se aplica a