CultureInfo Construtores

Definição

Inicializa uma nova instância da classe CultureInfo.

Sobrecargas

CultureInfo(Int32)

Inicializa uma nova instância da classe CultureInfo com base na cultura especificada pelo identificador de cultura.

CultureInfo(String)

Inicializa uma nova instância da classe CultureInfo com base na cultura especificada por nome.

CultureInfo(Int32, Boolean)

Inicializa uma nova instância da classe com base na cultura especificada pelo identificador de cultura e em um valor que especifica se as configurações de cultura selecionadas pelo usuário de CultureInfo Windows.

CultureInfo(String, Boolean)

Inicializa uma nova instância da classe com base na cultura especificada pelo nome e em um valor que especifica se as configurações de cultura selecionadas pelo usuário de CultureInfo Windows.

CultureInfo(Int32)

Inicializa uma nova instância da classe CultureInfo com base na cultura especificada pelo identificador de cultura.

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

Um identificador CultureInfo predefinido, a propriedade LCID de um objeto CultureInfo existente ou identificador de cultura somente do Windows.

Exceções

culture é menor que zero.

culture não é um identificador de cultura válido. Para obter mais informações, consulte a seção Observações para chamadores.

Comentários

os identificadores de cultura predefinidos para culturas disponíveis no sistema Windows são listados na coluna marca de idioma na lista de idiomas/nomes de região com suporte do Windows. Os nomes de cultura seguem o padrão definido pelo BCP 47.

Na maioria dos casos, o culture parâmetro é mapeado para o identificador de localidade NLS (suporte ao idioma nacional) correspondente. O valor do culture parâmetro torna-se o valor da LCID Propriedade do novo CultureInfo .

Recomendamos que você chame o construtor de nome de localidade CultureInfo.CultureInfo , pois os nomes de localidade são preferidos para LCIDs. Para localidades personalizadas, é necessário um nome de localidade.

o usuário pode optar por substituir alguns dos valores associados à cultura atual de Windows por meio da parte de opções regionais e de idioma do painel de controle. Por exemplo, o usuário pode optar por exibir a data em um formato diferente ou usar uma moeda diferente do padrão para a cultura. se o identificador de cultura especificado corresponder ao identificador de cultura da cultura de Windows atual, esse construtor criará um CultureInfo que usa essas substituições, incluindo as configurações do usuário para as propriedades da DateTimeFormatInfo instância retornada pela DateTimeFormat propriedade e as propriedades da NumberFormatInfo instância retornada pela NumberFormat propriedade. Se as configurações do usuário forem incompatíveis com a cultura associada ao CultureInfo (por exemplo, se o calendário selecionado não for um dos OptionalCalendars ), os resultados dos métodos e os valores das propriedades serão indefinidos.

se o identificador de cultura especificado não corresponder ao identificador da cultura de Windows atual, esse construtor criará um CultureInfo que usa os valores padrão para a cultura especificada.

A UseUserOverride propriedade é sempre definida como true .

por exemplo, suponha que o árabe (arábia saudita) seja a cultura de Windows atual e que o usuário tenha alterado o calendário de Hijri para gregoriano.

para culturas que usam o euro, .NET Framework e Windows XP definem a moeda padrão como euro. no entanto, as versões mais antigas do Windows não. portanto, se o usuário de uma versão mais antiga do Windows não tiver alterado a configuração de moeda por meio da parte de opções regionais e de idiomas do painel de controle, a moeda poderá estar incorreta. para usar a configuração padrão de .NET Framework para a moeda, o aplicativo deve usar uma CultureInfo sobrecarga de construtor que aceite um useUserOverride parâmetro e defina-o como false .

Observação

Para compatibilidade com vertida, uma cultura construída usando um parâmetro de 0x0004 ou 0x7c04 terá uma propriedade culture Name de ou , zh-CHS zh-CHT respectivamente. Em vez disso, você deve preferir construir a cultura usando os nomes de cultura padrão atuais de ou , a menos que você tenha um zh-Hans motivo para usar os nomes mais zh-Hant antigos.

Notas aos Chamadores

.NET Framework 3.5 e versões anteriores lançam ArgumentException um se não for um culture identificador de cultura válido. Começando com .NET Framework 4, esse construtor lança um CultureNotFoundException . Começando com aplicativos executados no .NET Framework 4 ou posterior no Windows 7 ou posterior, o método tenta recuperar um objeto cujo identificador é do sistema operacional; se o sistema operacional não dá suporte a essa cultura, o método lança uma CultureInfo culture CultureNotFoundException exceção.

No .NET 6 e versões posteriores, um será lançado se o aplicativo estiver em execução em um ambiente em que o modo invariável de globalização está habilitado, por exemplo, alguns contêineres do Docker e uma cultura diferente da cultura CultureNotFoundException invariável é especificada.

Confira também

Aplica-se a

CultureInfo(String)

Inicializa uma nova instância da classe CultureInfo com base na cultura especificada por nome.

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

Um nome de CultureInfo predefinido, Name de um CultureInfo existente, ou o nome da cultura somente do Windows. name não diferencia maiúsculas de minúsculas.

Exceções

name é nulo.

name não é um nome de cultura válido. Para obter mais informações, consulte a seção Observações para Chamadores.

Exemplos

O exemplo a seguir recupera a cultura atual. Se for algo diferente da cultura francês (França), ele chamará o construtor para insinuar um objeto que representa a cultura francês (França) e a torna CultureInfo(String) a CultureInfo cultura atual. Caso contrário, ele instalará um objeto que representa a cultura francês CultureInfo (Brasil) e a torna a cultura atual.

using System;
using System.Globalization;

public class Example
{
   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

Comentários

Para ver uma lista de nomes de cultura predefinidos em sistemas Windows, consulte a coluna Marca de idioma na lista de nomes de idioma/regiãocom suporte do Windows . Os nomes de cultura seguem o padrão definido pelo BCP 47. Além disso, começando com Windows 10, name pode ser qualquer marca de idioma BCP-47 válida.

Se for , o construtor criará uma instância da cultura name String.Empty invariável; isso equivale a recuperar o valor da InvariantCulture propriedade .

O usuário pode optar por substituir alguns dos valores associados à cultura atual do Windows por meio da parte de opções regionais e de idioma Painel de Controle. Por exemplo, o usuário pode optar por exibir a data em um formato diferente ou usar uma moeda diferente do padrão para a cultura. Se o identificador de cultura associado ao corresponde ao identificador de cultura da cultura atual do Windows, esse construtor criará um objeto que usa essas substituições, incluindo as configurações do usuário para as propriedades da instância retornada pela propriedade e as propriedades da instância retornadas pela name CultureInfo propriedade DateTimeFormatInfo DateTimeFormat NumberFormatInfo NumberFormat . Se as configurações do usuário forem incompatíveis com a cultura associada ao , por exemplo, se o calendário selecionado não for um dos , os resultados dos métodos e os valores das propriedades serão CultureInfo OptionalCalendars indefinido.

Se o identificador de cultura associado a não corresponder ao identificador de cultura da cultura Windows atual, esse construtor criará um objeto que usa os valores padrão para name a CultureInfo cultura especificada.

A UseUserOverride propriedade é sempre definida como true .

Por exemplo, suponha que o árabe (árabe) é a cultura atual do Windows e o usuário alterou o calendário de Hijri para gregoriano.

A LCID propriedade do novo é definida como o CultureInfo identificador de cultura associado ao nome especificado.

Para culturas que usam o euro, os .NET Framework e Windows XP definirão a moeda padrão como euro. No entanto, versões mais antigas Windows não fazem isso. Portanto, se o usuário de uma versão mais antiga do Windows tiver alterado a configuração de moeda por meio da parte de opções regionais e de idioma Painel de Controle, a moeda poderá estar incorreta. Para usar a .NET Framework padrão para a moeda, o aplicativo deve usar uma sobrecarga de construtor que aceita um parâmetro e CultureInfo useUserOverride defini-lo como false .

Notas aos Chamadores

.NET Framework 3.5 e versões anteriores lançam ArgumentException um se não for um nome de cultura name válido. Começando com .NET Framework 4, esse construtor lança um CultureNotFoundException . Começando com aplicativos executados no .NET Framework 4 ou posterior no Windows 7 ou posterior, o método tenta recuperar um objeto cujo identificador é do sistema operacional; se o sistema operacional não dá suporte a essa cultura e, se não for o nome de uma cultura suplementar ou de substituição, o método lançará uma CultureInfo name name CultureNotFoundException exceção.

No .NET 6 e versões posteriores, um será lançado se o aplicativo estiver em execução em um ambiente em que o modo invariável de globalização está habilitado, por exemplo, alguns contêineres do Docker e uma cultura diferente da cultura CultureNotFoundException invariável é especificada.

Confira também

Aplica-se a

CultureInfo(Int32, Boolean)

Inicializa uma nova instância da classe com base na cultura especificada pelo identificador de cultura e em um valor que especifica se as configurações de cultura selecionadas pelo usuário de CultureInfo 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

Um identificador CultureInfo predefinido, a propriedade LCID de um objeto CultureInfo existente ou identificador de cultura somente do Windows.

useUserOverride
Boolean

truepara usar as configurações de cultura selecionadas pelo usuário (somente Windows); false para usar as configurações de cultura padrão.

Exceções

culture é menor que zero.

culture não é um identificador de cultura válido. Para obter mais informações, consulte a seção Observações para chamadores.

Comentários

Identificadores de cultura predefinidos disponíveis em sistemas Windows são listados na coluna Marca de idioma na lista de nomes de idioma/regiãocom suporte do Windows . Os nomes de cultura seguem o padrão definido pelo BCP 47.

Na maioria dos casos, o parâmetro é mapeado para o identificador de localidade culture NLS (National Language Support) correspondente. O valor do culture parâmetro torna-se o valor LCID da propriedade do novo CultureInfo .

Recomendamos que você chame o construtor de nome de localidade , porque os nomes de CultureInfo.CultureInfo localidade são preferíveis a LCIDs. Para localidades personalizadas, um nome de localidade é necessário.

O usuário pode optar por substituir alguns dos valores associados à cultura atual do Windows por meio da parte de opções regionais e de idioma Painel de Controle. Por exemplo, o usuário pode optar por exibir a data em um formato diferente ou usar uma moeda diferente do padrão para a cultura.

Normalmente, os aplicativos não devem permitir substituições de usuário. Não permitir substituições em si não garante a estabilidade dos dados. Para obter mais informações, consulte a entrada de blog Dados de cultura não devem ser considerados estáveis (exceto para Invariável).

Se a propriedade for definida como e o identificador de cultura especificado corresponde ao identificador da cultura atual do Windows, esse construtor criará um que usa essas substituições, incluindo configurações de usuário para as propriedades da instância retornada pela propriedade e as propriedades da instância retornadas pela UseUserOverride true propriedade CultureInfo DateTimeFormatInfo DateTimeFormat NumberFormatInfo NumberFormat . Se as configurações do usuário forem incompatíveis com a cultura associada ao , por exemplo, se o calendário selecionado não for um dos , os resultados dos métodos e os valores das propriedades serão CultureInfo OptionalCalendars indefinido.

Caso contrário, esse construtor cria CultureInfo um que usa os valores padrão para a cultura especificada.

O valor do useUserOverride parâmetro se torna o valor da propriedade UseUserOverride .

Por exemplo, suponha que árabe (árabe) é a cultura atual do Windows e o usuário alterou o calendário de Hijri para gregoriano.

Para culturas que usam o euro, os .NET Framework e Windows XP definirão a moeda padrão como euro. No entanto, as versões mais antigas Windows não. Portanto, se o usuário de uma versão mais antiga do Windows tiver alterado a configuração de moeda por meio da parte de opções regionais e de idioma Painel de Controle, a moeda poderá estar incorreta. Para usar a .NET Framework padrão para a moeda, o aplicativo deve definir o useUserOverride parâmetro como false .

Observação

Para compatibilidade com corretamente, uma cultura construída usando um parâmetro de 0x0004 ou 0x7c04 terá uma propriedade culture Name de zh-CHS ou zh-CHT, respectivamente. Em vez disso, você deve preferir construir a cultura usando os nomes de cultura padrão atuais de ou zh-Hant, a menos que você tenha um motivo para zh-Hans usar os nomes mais antigos.

Notas aos Chamadores

.NET Framework 3.5 e versões anteriores lançam ArgumentException um se não for um culture identificador de cultura válido. Começando com .NET Framework 4, esse construtor lança um CultureNotFoundException . Começando com aplicativos executados no .NET Framework 4 ou posterior no Windows 7 ou posterior, o método tenta recuperar um objeto cujo identificador é do sistema operacional; se o sistema operacional não dá suporte a essa cultura, o método lança uma CultureInfo culture CultureNotFoundException exceção.

No .NET 6 e versões posteriores, um será lançado se o aplicativo estiver em execução em um ambiente em que o modo invariável de globalização está habilitado, por exemplo, alguns contêineres do Docker e uma cultura diferente da cultura CultureNotFoundException invariável é especificada.

Confira também

Aplica-se a

CultureInfo(String, Boolean)

Inicializa uma nova instância da classe com base na cultura especificada pelo nome e em um valor que especifica se as configurações de cultura selecionadas pelo usuário de CultureInfo 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

Um nome de CultureInfo predefinido, Name de um CultureInfo existente, ou o nome da cultura somente do Windows. name não diferencia maiúsculas de minúsculas.

useUserOverride
Boolean

truepara usar as configurações de cultura selecionadas pelo usuário (somente Windows); false para usar as configurações de cultura padrão.

Exceções

name é nulo.

name não é um nome de cultura válido. Para obter mais informações, consulte a seção Observações para chamadores.

Comentários

Para ver uma lista de nomes de cultura predefinidos, consulte a coluna Marca de idioma na lista de nomes de idioma/regiãocom suporte do Windows . Os nomes de cultura seguem o padrão definido pelo BCP 47. Além disso, começando com Windows 10, name pode ser qualquer marca de idioma BCP-47 válida.

Se for , o construtor criará uma instância da cultura name String.Empty invariável; isso equivale a recuperar o valor da InvariantCulture propriedade .

O usuário pode optar por substituir alguns dos valores associados à cultura Windows atual por meio da parte de opções regionais e de idioma Painel de Controle. Por exemplo, o usuário pode optar por exibir a data em um formato diferente ou usar uma moeda diferente do padrão para a cultura.

Normalmente, os aplicativos não devem permitir substituições de usuário. Não permitir substituições em si não garante a estabilidade dos dados. Para obter mais informações, consulte a entrada de blog Dados de cultura não devem ser considerados estáveis (exceto para Invariável).

Se a propriedade for definida como e o identificador de cultura associado ao nome de cultura especificado corresponde ao identificador de cultura da cultura atual do Windows, esse construtor criará um que usa essas substituições, incluindo configurações de usuário para as propriedades da instância retornadas pela propriedade e as propriedades da instância retornadas pela UseUserOverride true propriedade CultureInfo DateTimeFormatInfo DateTimeFormat NumberFormatInfo NumberFormat . Se as configurações do usuário forem incompatíveis com a cultura associada ao , por exemplo, se o calendário selecionado não for um dos , os resultados dos métodos e os valores das propriedades serão CultureInfo OptionalCalendars indefinido.

Caso contrário, esse construtor cria CultureInfo um que usa os valores padrão para a cultura especificada.

O valor do useUserOverride parâmetro se torna o valor da propriedade UseUserOverride .

Por exemplo, suponha que o árabe (árabe) é a cultura atual do Windows e o usuário alterou o calendário de Hijri para gregoriano.

A LCID propriedade do novo é definida como o CultureInfo identificador de cultura associado ao nome especificado.

Para culturas que usam o euro, os .NET Framework e Windows XP definirão a moeda padrão como euro. No entanto, versões mais antigas Windows não fazem isso. Portanto, se o usuário de uma versão mais antiga do Windows tiver alterado a configuração de moeda por meio da parte de opções regionais e de idioma Painel de Controle, a moeda poderá estar incorreta. Para usar a .NET Framework padrão para a moeda, o aplicativo deve definir o useUserOverride parâmetro como false .

Notas aos Chamadores

.NET Framework 3.5 e versões anteriores lançam ArgumentException um se não for um nome de cultura name válido. Começando com .NET Framework 4, esse construtor lança um CultureNotFoundException . Começando com aplicativos executados no .NET Framework 4 ou posterior no Windows 7 ou posterior, o método tenta recuperar um objeto cujo identificador é do sistema operacional; se o sistema operacional não dá suporte a essa cultura e, se não for o nome de uma cultura suplementar ou de substituição, o método lançará uma CultureInfo name name CultureNotFoundException exceção.

No .NET 6 e versões posteriores, um será lançado se o aplicativo estiver em execução em um ambiente em que o modo invariável de globalização está habilitado, por exemplo, alguns contêineres do Docker e uma cultura diferente da cultura CultureNotFoundException invariável é especificada.

Confira também

Aplica-se a