CultureInfo Конструкторы

Определение

Инициализирует новый экземпляр класса CultureInfo.Initializes a new instance of the CultureInfo class.

Перегрузки

CultureInfo(Int32)

Инициализирует новый экземпляр класса CultureInfo на основе языка и региональных параметров, заданных идентификатором.Initializes a new instance of the CultureInfo class based on the culture specified by the culture identifier.

CultureInfo(String)

Инициализирует новый экземпляр класса CultureInfo на основе языка и региональных параметров, заданных именем.Initializes a new instance of the CultureInfo class based on the culture specified by name.

CultureInfo(Int32, Boolean)

Инициализирует новый экземпляр класса CultureInfo на основе языка и региональных параметров, заданных идентификатором, и логического значения, указывающего, нужно ли использовать выбранные пользователем параметры языка и региональных параметров в операционной системе.Initializes a new instance of the CultureInfo class based on the culture specified by the culture identifier and on the Boolean that specifies whether to use the user-selected culture settings from the system.

CultureInfo(String, Boolean)

Инициализирует новый экземпляр класса CultureInfo на основе языка и региональных параметров, заданных именем, и логического значения, указывающего, нужно ли использовать выбранные пользователем параметры языка и региональных параметров в операционной системе.Initializes a new instance of the CultureInfo class based on the culture specified by name and on the Boolean that specifies whether to use the user-selected culture settings from the system.

CultureInfo(Int32)

Инициализирует новый экземпляр класса CultureInfo на основе языка и региональных параметров, заданных идентификатором.Initializes a new instance of the CultureInfo class based on the culture specified by the culture identifier.

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

Параметры

culture
Int32

Предварительно определенный идентификатор CultureInfo, свойство LCID существующего объекта CultureInfo или идентификатор языка и региональных параметров, свойственных только Windows.A predefined CultureInfo identifier, LCID property of an existing CultureInfo object, or Windows-only culture identifier.

Исключения

Значение параметра culture меньше нуля.culture is less than zero.

culture не является допустимым идентификатором языка и региональных параметров.culture is not a valid culture identifier. Дополнительные сведения см. в разделе "Примечания для вызывающей стороны".See the Notes to Callers section for more information.

Комментарии

Стандартные идентификаторы языка и региональных параметров, доступных в системе Windows, перечислены в столбце тег языка в списке имен языков и регионов, поддерживаемых Windows.Predefined culture identifiers for cultures available on Windows system are listed in the Language tag column in the list of language/region names supported by Windows. Теги языков указаны в соответствии со стандартом BCP 47.Culture names follow the standard defined by BCP 47.

В большинстве случаев параметр culture сопоставляется с соответствующим идентификатором локали языковой поддержки (NLS).In most cases, the culture parameter is mapped to the corresponding National Language Support (NLS) locale identifier. Значение параметра culture преобразуется в значение свойства LCID нового CultureInfo.The value of the culture parameter becomes the value of the LCID property of the new CultureInfo.

Рекомендуется вызывать конструктор имени языкового стандарта CultureInfo.CultureInfo, так как имена языковых стандартов предпочтительны для LCID.We recommend that you call the locale name constructor CultureInfo.CultureInfo, because locale names are preferable to LCIDs. Для пользовательских языковых стандартов требуется указать имя локали.For custom locales, a locale name is required.

Пользователь может переопределить некоторые значения, связанные с текущим языком и региональными параметрами Windows, в разделе язык и региональные стандарты панели управления.The user might choose to override some of the values associated with the current culture of Windows through the regional and language options portion of Control Panel. Например, пользователь может выбрать отображение даты в другом формате или использовать валюту, отличную от используемой по умолчанию для языка и региональных параметров.For example, the user might choose to display the date in a different format or to use a currency other than the default for the culture. Если указанный идентификатор языка и региональных параметров совпадает с идентификатором языка и региональных параметров текущего языка и региональных параметров Windows, этот конструктор создает CultureInfo, который использует эти переопределения, включая пользовательские параметры для свойств экземпляра DateTimeFormatInfo, возвращаемого DateTimeFormat свойства и свойства экземпляра NumberFormatInfo, возвращаемого свойством NumberFormat.If the specified culture identifier matches the culture identifier of the current Windows culture, this constructor creates a CultureInfo that uses those overrides, including user settings for the properties of the DateTimeFormatInfo instance returned by the DateTimeFormat property, and the properties of the NumberFormatInfo instance returned by the NumberFormat property. Если параметры пользователя несовместимы с языком и региональными параметрами, связанными с CultureInfo (например, если выбранный календарь не является одним из OptionalCalendars) результаты методов и значения свойств не определены.If the user settings are incompatible with the culture associated with the CultureInfo (for example, if the selected calendar is not one of the OptionalCalendars) the results of the methods and the values of the properties are undefined.

Если указанный идентификатор языка и региональных параметров не совпадает с идентификатором текущей культуры Windows, этот конструктор создает CultureInfo, который использует значения по умолчанию для указанного языка и региональных параметров.If the specified culture identifier does not match the identifier of the current Windows culture, this constructor creates a CultureInfo that uses the default values for the specified culture.

Свойству UseUserOverride всегда присвоено значение true.The UseUserOverride property is always set to true.

Например, предположим, что арабский (Саудовская Аравия) является текущей культурой Windows, и пользователь изменил календарь с Хиджра на григорианский.For example, suppose that Arabic (Saudi Arabia) is the current Windows culture and the user has changed the calendar from Hijri to Gregorian.

  • При использовании CultureInfo("0x0401") (имя языка и региональных параметров AR-SA) Calendar имеет значение GregorianCalendar (то есть параметр пользователя), а UseUserOverride имеет значение true.With CultureInfo("0x0401") (culture name ar-SA), Calendar is set to GregorianCalendar (which is the user setting) and UseUserOverride is set to true.

  • В CultureInfo("0x041E") (имя культуры th-TH) Calendar имеет значение ThaiBuddhistCalendar (календарь по умолчанию для th-TH), а UseUserOverride имеет значение true.With CultureInfo("0x041E") (culture name th-TH), Calendar is set to ThaiBuddhistCalendar (which is the default calendar for th-TH) and UseUserOverride is set to true.

Для языков и региональных параметров, использующих евро, .NET Framework и Windows XP устанавливают валюту по умолчанию как евро.For cultures that use the euro, the .NET Framework and Windows XP set the default currency as euro. Однако более старые версии Windows не имеют.However, older versions of Windows do not. Таким образом, если пользователь более старой версии Windows не изменил настройку валюты с помощью языковых и региональных параметров панели управления, то денежная единица может быть неверной.Therefore, if the user of an older version of Windows has not changed the currency setting through the regional and language options portion of Control Panel, the currency might be incorrect. Чтобы использовать параметр .NET Framework по умолчанию для валюты, приложение должно использовать перегрузку конструктора CultureInfo, которая принимает параметр useUserOverride и присвоить ему значение false.To use the .NET Framework default setting for the currency, the application should use a CultureInfo constructor overload that accepts a useUserOverride parameter and set it to false.

Примечание

Для обеспечения обратной совместимости язык и региональные параметры, созданные с помощью параметра culture 0x0004 или 0x7C04, будут иметь свойство Name с zh-CHS или zh-CHT соответственно.For backwards compatibility, a culture constructed using a culture parameter of 0x0004 or 0x7c04 will have a Name property of zh-CHS or zh-CHT, respectively. Предпочтительнее создавать язык и региональные параметры, используя текущие стандартные имена языка и региональных параметров zh-Ханс или zh-Hant, если нет причины использовать старые имена.You should instead prefer to construct the culture using the current standard culture names of zh-Hans or zh-Hant, unless you have a reason for using the older names.

Примечания для тех, кто вызывает этот метод

.NET Framework 3,5.NET Framework 3.5 и более ранние версии вызовут ArgumentException если culture не является допустимым идентификатором языка и региональных параметров.The .NET Framework 3,5.NET Framework 3.5 and earlier versions throw an ArgumentException if culture is not a valid culture identifier. Начиная с .NET Framework 4.NET Framework 4этот конструктор создает исключение CultureNotFoundException.Starting with the .NET Framework 4.NET Framework 4, this constructor throws a CultureNotFoundException. Начиная с приложений, которые выполняются в .NET Framework 4.NET Framework 4 или более поздней версии в Windows 7 или более поздней версии, метод пытается получить объект CultureInfo, идентификатор которого culture из операционной системы. Если операционная система не поддерживает этот язык и региональные параметры, метод вызывает исключение CultureNotFoundException.Starting with apps that run under the .NET Framework 4.NET Framework 4 or later on Windows 7 or later, the method attempts to retrieve a CultureInfo object whose identifier is culture from the operating system; if the operating system does not support that culture, the method throws a CultureNotFoundException exception.

Дополнительно

CultureInfo(String)

Инициализирует новый экземпляр класса CultureInfo на основе языка и региональных параметров, заданных именем.Initializes a new instance of the CultureInfo class based on the culture specified by name.

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

Параметры

name
String

Предварительно определенное имя CultureInfo, свойство Name существующего объекта CultureInfo или имя языка и региональных параметров, свойственных только Windows.A predefined CultureInfo name, Name of an existing CultureInfo, or Windows-only culture name. name не учитывает регистр.name is not case-sensitive.

Исключения

Параметр name имеет значение null.name is null.

name не является допустимым именем культуры.name is not a valid culture name. Дополнительные сведения см. в разделе "Примечания к вызывающим объектам".For more information, see the Notes to Callers section.

Примеры

В следующем примере извлекается текущий язык и региональные параметры.The following example retrieves the current culture. Если он отличается от языка и региональных параметров "французский (Франция)", он вызывает конструктор CultureInfo(String) для создания экземпляра объекта CultureInfo, представляющего язык и региональные параметры "французский (Франция)", и делает его текущим языком и региональными параметрами текущего потока.If it is anything other than the French (France) culture, it calls the CultureInfo(String) constructor to instantiate a CultureInfo object that represents the French (France) culture and makes it the current thread culture. В противном случае он создает объект CultureInfo, представляющий французский язык (Люксембург), и делает его текущим языком и региональными параметрами.Otherwise, it instantiates a CultureInfo object that represents the French (Luxembourg) culture and makes it the current culture.

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

Комментарии

Список предварительно определенных имен языков и региональных параметров в системах Windows см. в столбце тег языка в списке имен языков и регионов, поддерживаемых Windows.For a list of predefined culture names on Windows systems, see the Language tag column in the list of language/region names supported by Windows. Теги языков указаны в соответствии со стандартом BCP 47.Culture names follow the standard defined by BCP 47. Кроме того, начиная с Windows 10 name может быть любым допустимым тегом языка BCP-47.In addition, starting with Windows 10, name can be any valid BCP-47 language tag.

Если name String.Empty, конструктор создает экземпляр инвариантного языка и региональных параметров; Это эквивалентно извлечению значения свойства InvariantCulture.If name is String.Empty, the constructor creates an instance of the invariant culture; this is equivalent to retrieving the value of the InvariantCulture property.

Пользователь может переопределить некоторые значения, связанные с текущим языком и региональными параметрами Windows, в разделе язык и региональные стандарты панели управления.The user might choose to override some of the values associated with the current culture of Windows through the regional and language options portion of Control Panel. Например, пользователь может выбрать отображение даты в другом формате или использовать валюту, отличную от используемой по умолчанию для языка и региональных параметров.For example, the user might choose to display the date in a different format or to use a currency other than the default for the culture. Если идентификатор языка и региональных параметров, связанный с name, совпадает с идентификатором языка и региональных параметров текущего языка и региональных параметров Windows, этот конструктор создает объект CultureInfo, использующий эти переопределения, включая пользовательские параметры для свойств экземпляра DateTimeFormatInfo значение, возвращаемое свойством DateTimeFormat, и свойства экземпляра NumberFormatInfo, возвращаемого свойством NumberFormat.If the culture identifier associated with name matches the culture identifier of the current Windows culture, this constructor creates a CultureInfo object that uses those overrides, including user settings for the properties of the DateTimeFormatInfo instance returned by the DateTimeFormat property, and the properties of the NumberFormatInfo instance returned by the NumberFormat property. Если параметры пользователя несовместимы с культурой, связанной с CultureInfo, например, если выбранный календарь не является одним из OptionalCalendars, результаты методов и значения свойств будут неопределенными.If the user settings are incompatible with the culture associated with the CultureInfo, for example, if the selected calendar is not one of the OptionalCalendars, the results of the methods and the values of the properties are undefined.

Если идентификатор языка и региональных параметров, связанный с name, не совпадает с идентификатором языка и региональных параметров текущего языка и региональных параметров Windows, этот конструктор создает объект CultureInfo, который использует значения по умолчанию для указанного языка и региональных параметров.If the culture identifier associated with name does not match the culture identifier of the current Windows culture, this constructor creates a CultureInfo object that uses the default values for the specified culture.

Свойству UseUserOverride всегда присвоено значение true.The UseUserOverride property is always set to true.

Например, предположим, что арабский (Саудовская Аравия) — это текущий язык и региональные параметры Windows, и пользователь изменил календарь с Хиджра на григорианский.For example, suppose that Arabic (Saudi Arabia) is the current culture of Windows and the user changed the calendar from Hijri to Gregorian.

Свойству LCID нового CultureInfo присваивается идентификатор языка и региональных параметров, связанный с заданным именем.The LCID property of the new CultureInfo is set to the culture identifier associated with the specified name.

Для языков и региональных параметров, использующих евро, .NET Framework и Windows XP устанавливают валюту по умолчанию как евро.For cultures that use the euro, the .NET Framework and Windows XP set the default currency as euro. Однако более старые версии Windows не делают этого.However, older versions of Windows do not do this. Таким образом, если пользователь более старой версии Windows не изменил настройку валюты с помощью языковых и региональных параметров панели управления, то денежная единица может быть неверной.Therefore, if the user of an older version of Windows has not changed the currency setting through the regional and language options portion of Control Panel, the currency might be incorrect. Чтобы использовать параметр .NET Framework по умолчанию для валюты, приложение должно использовать перегрузку конструктора CultureInfo, которая принимает параметр useUserOverride и присвоить ему значение false.To use the .NET Framework default setting for the currency, the application should use a CultureInfo constructor overload that accepts a useUserOverride parameter and set it to false.

Примечания для тех, кто вызывает этот метод

.NET Framework 3,5.NET Framework 3.5 и более ранние версии вызовут ArgumentException если name не является допустимым именем языка и региональных параметров.The .NET Framework 3,5.NET Framework 3.5 and earlier versions throw an ArgumentException if name is not a valid culture name. Начиная с .NET Framework 4.NET Framework 4этот конструктор создает исключение CultureNotFoundException.Starting with the .NET Framework 4.NET Framework 4, this constructor throws a CultureNotFoundException. Начиная с приложений, которые выполняются в .NET Framework 4.NET Framework 4 или более поздней версии в Windows 7 или более поздней версии, метод пытается получить объект CultureInfo, идентификатор которого name из операционной системы. Если операционная система не поддерживает этот язык и региональные параметры, а name не является именем дополнительного или заменяющего языка и региональных параметров, метод выдает исключение CultureNotFoundException.Starting with apps that run under the .NET Framework 4.NET Framework 4 or later on Windows 7 or later, the method attempts to retrieve a CultureInfo object whose identifier is name from the operating system; if the operating system does not support that culture, and if name is not the name of a supplementary or replacement culture, the method throws a CultureNotFoundException exception.

Дополнительно

CultureInfo(Int32, Boolean)

Инициализирует новый экземпляр класса CultureInfo на основе языка и региональных параметров, заданных идентификатором, и логического значения, указывающего, нужно ли использовать выбранные пользователем параметры языка и региональных параметров в операционной системе.Initializes a new instance of the CultureInfo class based on the culture specified by the culture identifier and on the Boolean that specifies whether to use the user-selected culture settings from the system.

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)

Параметры

culture
Int32

Предварительно определенный идентификатор CultureInfo, свойство LCID существующего объекта CultureInfo или идентификатор языка и региональных параметров, свойственных только Windows.A predefined CultureInfo identifier, LCID property of an existing CultureInfo object, or Windows-only culture identifier.

useUserOverride
Boolean

Логическое значение, определяющее применение параметров языка и региональных параметров, заданных пользователем (true) или используемых по умолчанию (false).A Boolean that denotes whether to use the user-selected culture settings (true) or the default culture settings (false).

Исключения

Значение параметра culture меньше нуля.culture is less than zero.

culture не является допустимым идентификатором языка и региональных параметров.culture is not a valid culture identifier. Дополнительные сведения см. в разделе "Примечания для вызывающей стороны".See the Notes to Callers section for more information.

Комментарии

Стандартные идентификаторы языка и региональных параметров, доступные в системах Windows, перечислены в столбце тег языка в списке имен языков и регионов, поддерживаемых Windows.Predefined culture identifiers available on Windows systems are listed in the Language tag column in the list of language/region names supported by Windows. Теги языков указаны в соответствии со стандартом BCP 47.Culture names follow the standard defined by BCP 47.

В большинстве случаев параметр culture сопоставляется с соответствующим идентификатором локали языковой поддержки (NLS).In most cases, the culture parameter is mapped to the corresponding National Language Support (NLS) locale identifier. Значение параметра culture преобразуется в значение свойства LCID нового CultureInfo.The value of the culture parameter becomes the value of the LCID property of the new CultureInfo.

Рекомендуется вызывать конструктор имени языкового стандарта CultureInfo.CultureInfo, так как имена языковых стандартов предпочтительны для LCID.We recommend that you call the locale name constructor CultureInfo.CultureInfo, because locale names are preferable to LCIDs. Для пользовательских языковых стандартов требуется указать имя локали.For custom locales, a locale name is required.

Пользователь может переопределить некоторые значения, связанные с текущим языком и региональными параметрами Windows, в разделе язык и региональные стандарты панели управления.The user might choose to override some of the values associated with the current culture of Windows through the regional and language options portion of Control Panel. Например, пользователь может выбрать отображение даты в другом формате или использовать валюту, отличную от используемой по умолчанию для языка и региональных параметров.For example, the user might choose to display the date in a different format or to use a currency other than the default for the culture.

Приложения обычно не запрещают переопределение пользователей.Applications should typically not disallow user overrides. Обратите внимание, что запрещение переопределений не гарантирует стабильность данных. см. сведения о культуре для записи в блоге, которые не должны считаться стабильными (за исключением инвариантного).Note that disallowing overrides does not itself guarantee data stability; see the blog entry Culture data shouldn't be considered stable (except for Invariant).

Если свойство UseUserOverride имеет значение true и указанный идентификатор языка и региональных параметров совпадает с идентификатором текущего языка и региональных параметров Windows, этот конструктор создает CultureInfo, использующую эти переопределения, включая пользовательские параметры для свойств DateTimeFormatInfo экземпляр, возвращаемый свойством DateTimeFormat, и свойства экземпляра NumberFormatInfo, возвращаемого свойством NumberFormat.If the UseUserOverride property is set to true and the specified culture identifier matches the identifier of the current Windows culture, this constructor creates a CultureInfo that uses those overrides, including user settings for the properties of the DateTimeFormatInfo instance returned by the DateTimeFormat property, and the properties of the NumberFormatInfo instance returned by the NumberFormat property. Если параметры пользователя несовместимы с культурой, связанной с CultureInfo, например, если выбранный календарь не является одним из OptionalCalendars, результаты методов и значения свойств будут неопределенными.If the user settings are incompatible with the culture associated with the CultureInfo, for example, if the selected calendar is not one of the OptionalCalendars, the results of the methods and the values of the properties are undefined.

В противном случае этот конструктор создает CultureInfo, который использует значения по умолчанию для указанного языка и региональных параметров.Otherwise, this constructor creates a CultureInfo that uses the default values for the specified culture.

Значение параметра useUserOverride преобразуется в значение свойства UseUserOverride.The value of the useUserOverride parameter becomes the value of the UseUserOverride property.

Например, предположим, что арабский (Саудовская Аравия) является текущим языком и региональными параметрами Windows, и пользователь изменил календарь с Хиджра на григорианский.For example, suppose that Arabic (Saudi Arabia) is the current culture of Windows and the user has changed the calendar from Hijri to Gregorian.

  • При использовании CultureInfo("0x0401", true) (имя языка и региональных параметров AR-SA) Calendar имеет значение GregorianCalendar (то есть параметр пользователя), а UseUserOverride имеет значение true.With CultureInfo("0x0401", true) (culture name ar-SA), Calendar is set to GregorianCalendar (which is the user setting) and UseUserOverride is set to true.

  • В CultureInfo("0x0401", false) (имя культуры AR-SA) Calendar имеет значение HijriCalendar (календарь по умолчанию для AR-SA), а UseUserOverride имеет значение false.With CultureInfo("0x0401", false) (culture name ar-SA), Calendar is set to HijriCalendar (which is the default calendar for ar-SA) and UseUserOverride is set to false.

  • В CultureInfo("0x041E", true) (имя культуры th-TH) Calendar имеет значение ThaiBuddhistCalendar (календарь по умолчанию для th-TH), а UseUserOverride имеет значение true.With CultureInfo("0x041E", true) (culture name th-TH), Calendar is set to ThaiBuddhistCalendar (which is the default calendar for th-TH) and UseUserOverride is set to true.

  • В CultureInfo("0x041E", false) (имя культуры th-TH) Calendar имеет значение ThaiBuddhistCalendar (календарь по умолчанию для th-TH), а UseUserOverride имеет значение false.With CultureInfo("0x041E", false) (culture name th-TH), Calendar is set to ThaiBuddhistCalendar (which is the default calendar for th-TH) and UseUserOverride is set to false.

Для языков и региональных параметров, использующих евро, .NET Framework и Windows XP устанавливают валюту по умолчанию как евро.For cultures that use the euro, the .NET Framework and Windows XP set the default currency as euro. Однако более старые версии Windows не имеют.However, older versions of Windows do not. Таким образом, если пользователь более старой версии Windows не изменил настройку валюты с помощью языковых и региональных параметров панели управления, то денежная единица может быть неверной.Therefore, if the user of an older version of Windows has not changed the currency setting through the regional and language options portion of Control Panel, the currency might be incorrect. Чтобы использовать параметр .NET Framework по умолчанию для валюты, приложение должно задать для параметра useUserOverride значение false.To use the .NET Framework default setting for the currency, the application should set the useUserOverride parameter to false.

Примечание

Для обеспечения обратной совместимости язык и региональные параметры, созданные с помощью параметра culture 0x0004 или 0x7C04, будут иметь свойство Name с zh-CHS или zh-CHT соответственно.For backwards compatibility, a culture constructed using a culture parameter of 0x0004 or 0x7c04 will have a Name property of zh-CHS or zh-CHT, respectively. Предпочтительнее создавать язык и региональные параметры, используя текущие стандартные имена языка и региональных параметров zh-Ханс или zh-Hant, если нет причины использовать старые имена.You should instead prefer to construct the culture using the current standard culture names of zh-Hans or zh-Hant, unless you have a reason for using the older names.

Примечания для тех, кто вызывает этот метод

.NET Framework 3,5.NET Framework 3.5 и более ранние версии вызовут ArgumentException если culture не является допустимым идентификатором языка и региональных параметров.The .NET Framework 3,5.NET Framework 3.5 and earlier versions throw an ArgumentException if culture is not a valid culture identifier. Начиная с .NET Framework 4.NET Framework 4этот конструктор создает исключение CultureNotFoundException.Starting with the .NET Framework 4.NET Framework 4, this constructor throws a CultureNotFoundException. Начиная с приложений, которые выполняются в .NET Framework 4.NET Framework 4 или более поздней версии в Windows 7 или более поздней версии, метод пытается получить объект CultureInfo, идентификатор которого culture из операционной системы. Если операционная система не поддерживает этот язык и региональные параметры, метод вызывает исключение CultureNotFoundException.Starting with apps that run under the .NET Framework 4.NET Framework 4 or later on Windows 7 or later, the method attempts to retrieve a CultureInfo object whose identifier is culture from the operating system; if the operating system does not support that culture, the method throws a CultureNotFoundException exception.

Дополнительно

CultureInfo(String, Boolean)

Инициализирует новый экземпляр класса CultureInfo на основе языка и региональных параметров, заданных именем, и логического значения, указывающего, нужно ли использовать выбранные пользователем параметры языка и региональных параметров в операционной системе.Initializes a new instance of the CultureInfo class based on the culture specified by name and on the Boolean that specifies whether to use the user-selected culture settings from the system.

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)

Параметры

name
String

Предварительно определенное имя CultureInfo, свойство Name существующего объекта CultureInfo или имя языка и региональных параметров, свойственных только Windows.A predefined CultureInfo name, Name of an existing CultureInfo, or Windows-only culture name. name не учитывает регистр.name is not case-sensitive.

useUserOverride
Boolean

Логическое значение, определяющее применение параметров языка и региональных параметров, заданных пользователем (true) или используемых по умолчанию (false).A Boolean that denotes whether to use the user-selected culture settings (true) or the default culture settings (false).

Исключения

Параметр name имеет значение null.name is null.

name не является допустимым именем языка и региональных параметров.name is not a valid culture name. Дополнительные сведения см. в разделе "Примечания для вызывающей стороны".See the Notes to Callers section for more information.

Комментарии

Список предварительно определенных имен языков и региональных параметров см. в столбце тег Language в списке имен языков и регионов, поддерживаемых Windows.For a list of predefined culture names, see the Language tag column in the list of language/region names supported by Windows. Теги языков указаны в соответствии со стандартом BCP 47.Culture names follow the standard defined by BCP 47. Кроме того, начиная с Windows 10 name может быть любым допустимым тегом языка BCP-47.In addition, starting with Windows 10, name can be any valid BCP-47 language tag.

Если name String.Empty, конструктор создает экземпляр инвариантного языка и региональных параметров; Это эквивалентно извлечению значения свойства InvariantCulture.If name is String.Empty, the constructor creates an instance of the invariant culture; this is equivalent to retrieving the value of the InvariantCulture property.

Пользователь может переопределить некоторые значения, связанные с текущим языком и региональными параметрами Windows, с помощью компонента язык и региональные стандарты панели управления.The user might choose to override some of the values associated with the current Windows culture through the regional and language options portion of Control Panel. Например, пользователь может выбрать отображение даты в другом формате или использовать валюту, отличную от используемой по умолчанию для языка и региональных параметров.For example, the user might choose to display the date in a different format or to use a currency other than the default for the culture.

Приложения обычно не запрещают переопределение пользователей.Applications should typically not disallow user overrides. Обратите внимание, что запрещение переопределений не гарантирует стабильность данных. см. сведения о культуре для записи в блоге, которые не должны считаться стабильными (за исключением инвариантного).Note that disallowing overrides does not itself guarantee data stability; see the blog entry Culture data shouldn't be considered stable (except for Invariant).

Если свойство UseUserOverride имеет значение true и идентификатор языка и региональных параметров, связанный с указанным именем языка и региональных параметров, совпадает с идентификатором языка и региональных параметров текущего языка и региональных параметров Windows, этот конструктор создает CultureInfo, использующую эти переопределения, включая пользователя параметры для свойств экземпляра DateTimeFormatInfo, возвращаемого свойством DateTimeFormat, и свойства экземпляра NumberFormatInfo, возвращаемого свойством NumberFormat.If the UseUserOverride property is set to true and the culture identifier associated with the specified culture name matches the culture identifier of the current Windows culture, this constructor creates a CultureInfo that uses those overrides, including user settings for the properties of the DateTimeFormatInfo instance returned by the DateTimeFormat property, and the properties of the NumberFormatInfo instance returned by the NumberFormat property. Если параметры пользователя несовместимы с культурой, связанной с CultureInfo, например, если выбранный календарь не является одним из OptionalCalendars, результаты методов и значения свойств будут неопределенными.If the user settings are incompatible with the culture associated with the CultureInfo, for example, if the selected calendar is not one of the OptionalCalendars, the results of the methods and the values of the properties are undefined.

В противном случае этот конструктор создает CultureInfo, который использует значения по умолчанию для указанного языка и региональных параметров.Otherwise, this constructor creates a CultureInfo that uses the default values for the specified culture.

Значение параметра useUserOverride преобразуется в значение свойства UseUserOverride.The value of the useUserOverride parameter becomes the value of the UseUserOverride property.

Например, предположим, что арабский (Саудовская Аравия) — это текущий язык и региональные параметры Windows, и пользователь изменил календарь с Хиджра на григорианский.For example, suppose that Arabic (Saudi Arabia) is the current culture of Windows and the user changed the calendar from Hijri to Gregorian.

Свойству LCID нового CultureInfo присваивается идентификатор языка и региональных параметров, связанный с заданным именем.The LCID property of the new CultureInfo is set to the culture identifier associated with the specified name.

Для языков и региональных параметров, использующих евро, .NET Framework и Windows XP устанавливают валюту по умолчанию как евро.For cultures that use the euro, the .NET Framework and Windows XP set the default currency as euro. Однако более старые версии Windows не делают этого.However, older versions of Windows do not do this. Таким образом, если пользователь более старой версии Windows не изменил настройку валюты с помощью языковых и региональных параметров панели управления, то денежная единица может быть неверной.Therefore, if the user of an older version of Windows has not changed the currency setting through the regional and language options portion of Control Panel, the currency might be incorrect. Чтобы использовать параметр .NET Framework по умолчанию для валюты, приложение должно задать для параметра useUserOverride значение false.To use the .NET Framework default setting for the currency, the application should set the useUserOverride parameter to false.

Примечания для тех, кто вызывает этот метод

.NET Framework 3,5.NET Framework 3.5 и более ранние версии вызовут ArgumentException если name не является допустимым именем языка и региональных параметров.The .NET Framework 3,5.NET Framework 3.5 and earlier versions throw an ArgumentException if name is not a valid culture name. Начиная с .NET Framework 4.NET Framework 4этот конструктор создает исключение CultureNotFoundException.Starting with the .NET Framework 4.NET Framework 4, this constructor throws a CultureNotFoundException. Начиная с приложений, которые выполняются в .NET Framework 4.NET Framework 4 или более поздней версии в Windows 7 или более поздней версии, метод пытается получить объект CultureInfo, идентификатор которого name из операционной системы. Если операционная система не поддерживает этот язык и региональные параметры, а name не является именем дополнительного или заменяющего языка и региональных параметров, метод выдает исключение CultureNotFoundException.Starting with apps that run under the .NET Framework 4.NET Framework 4 or later on Windows 7 or later, the method attempts to retrieve a CultureInfo object whose identifier is name from the operating system; if the operating system does not support that culture, and if name is not the name of a supplementary or replacement culture, the method throws a CultureNotFoundException exception.

Дополнительно

Применяется к