CultureInfo.GetCultureInfo 方法

定义

检索某个区域性的缓存的只读实例。

重载

GetCultureInfo(String, Boolean)

检索某个区域性的缓存的只读实例。

GetCultureInfo(String, String)

检索某个区域性的缓存的只读实例。 参数指定了一个使用 TextInfoCompareInfo 对象进行初始化的区域性,而这些对象则是由另一个区域性指定的。

GetCultureInfo(Int32)

使用特定的区域性标识符检索某个区域性的缓存的只读实例。

GetCultureInfo(String)

使用特定的区域性名称检索某个区域性的缓存的只读实例。

GetCultureInfo(String, Boolean)

检索某个区域性的缓存的只读实例。

public:
 static System::Globalization::CultureInfo ^ GetCultureInfo(System::String ^ name, bool predefinedOnly);
public static System.Globalization.CultureInfo GetCultureInfo (string name, bool predefinedOnly);
static member GetCultureInfo : string * bool -> System.Globalization.CultureInfo
Public Shared Function GetCultureInfo (name As String, predefinedOnly As Boolean) As CultureInfo

参数

name
String

区域性的名称。 此名称不区分大小写。

predefinedOnly
Boolean

如果请求创建平台已知的区域性的实例,则为 true。 如果即使平台未包含创建的区域性的数据,也可以检索此区域性,则为 false

返回

区域性的只读实例。

注解

默认情况下,当尝试创建任何区域性且基础平台 (Windows NLS 或 ICU) 不携带此区域性的特定数据时,平台将尝试使用来自其他区域性或某些常量值的数据构造区域性。

将 设置为 predefinedOnlytrue 可确保仅当平台具有该区域性的实际数据时,才会创建区域性。

适用于

GetCultureInfo(String, String)

检索某个区域性的缓存的只读实例。 参数指定了一个使用 TextInfoCompareInfo 对象进行初始化的区域性,而这些对象则是由另一个区域性指定的。

public:
 static System::Globalization::CultureInfo ^ GetCultureInfo(System::String ^ name, System::String ^ altName);
public static System.Globalization.CultureInfo GetCultureInfo (string name, string altName);
static member GetCultureInfo : string * string -> System.Globalization.CultureInfo
Public Shared Function GetCultureInfo (name As String, altName As String) As CultureInfo

参数

name
String

区域性的名称。 name 不区分大小写。

altName
String

区域性的名称提供了 TextInfoCompareInfo 对象,这些对象用于对 name 进行初始化。 altName 不区分大小写。

返回

只读 CultureInfo 对象。

例外

namealtName 为 null。

namealtName 用于指定不支持的区域性。 有关详细信息,请参阅“调用方备注”部分。

注解

有关 Windows 系统上预定义区域性名称的列表,请参阅 Windows 支持的语言/区域名称列表中的“语言标记”列。 列名遵循 BCP 47 定义的标准。 此外,从 Windows 10 开始,name可以是任何有效的 BCP-47 语言标记。

方法 GetCultureInfo 获取缓存的只读 CultureInfo 对象。 它提供的性能优于对构造函数的相应调用 CultureInfo 。 方法用于创建类似于 参数 name 指定的区域性,但具有不同的排序和大小写规则。

如果 namealtName 是当前区域性的名称,则返回的对象不会反映任何用户替代。 如果 nameString.Empty,则方法返回固定区域性。 这等效于检索 属性的值 InvariantCulture 。 如果 altNameString.Empty,则该方法使用由固定区域性指定的写入系统和比较规则。

调用方说明

如果 namealtName 不是有效的区域性名称,.NET Framework 3.5 及更早版本会引发 ArgumentException 。 从 .NET Framework 4 开始,此方法将CultureNotFoundException引发 。 从在 Windows 7 或更高版本.NET Framework 4 或更高版本下运行的应用开始,该方法尝试从操作系统检索CultureInfo其标识符为name的对象;如果操作系统不支持该区域性,并且name不是补充区域性或替换区域性的名称,则该方法将CultureNotFoundException引发异常。

在 .NET 6 及更高版本中, CultureNotFoundException 如果应用在启用了全球化固定模式的环境中运行,例如,某些 Docker 容器和指定了固定区域性以外的区域性,则会引发 。

另请参阅

适用于

GetCultureInfo(Int32)

使用特定的区域性标识符检索某个区域性的缓存的只读实例。

public:
 static System::Globalization::CultureInfo ^ GetCultureInfo(int culture);
public static System.Globalization.CultureInfo GetCultureInfo (int culture);
static member GetCultureInfo : int -> System.Globalization.CultureInfo
Public Shared Function GetCultureInfo (culture As Integer) As CultureInfo

参数

culture
Int32

区域设置标识符 (LCID)。

返回

只读 CultureInfo 对象。

例外

culture 小于零。

culture 指定不支持的区域性。 有关详细信息,请参阅“调用方备注”部分。

注解

建议使用此方法的字符串重载 (GetCultureInfo(String)) ,因为应使用区域设置名称而不是 LCID。 对于自定义区域设置,区域设置名称是必需的。

如果 culture 是当前区域性的区域设置标识符,则返回 CultureInfo 的对象不会反映任何用户替代。

调用方说明

.NET Framework 3.5 及更早版本如果 culture 不是有效的区域性标识符,则会引发 ArgumentException 。 从 .NET Framework 4 开始,此方法将CultureNotFoundException引发 。 从在 Windows 7 或更高版本.NET Framework 4 或更高版本下运行的应用开始,该方法尝试从操作系统检索CultureInfo其标识符为 culture 的对象;如果操作系统不支持该区域性,该方法将CultureNotFoundException引发 。

在 .NET 6 及更高版本中, CultureNotFoundException 如果应用在启用了全球化固定模式的环境中运行,例如,某些 Docker 容器和指定了固定区域性以外的区域性,则会引发 。

另请参阅

适用于

GetCultureInfo(String)

使用特定的区域性名称检索某个区域性的缓存的只读实例。

public:
 static System::Globalization::CultureInfo ^ GetCultureInfo(System::String ^ name);
public static System.Globalization.CultureInfo GetCultureInfo (string name);
static member GetCultureInfo : string -> System.Globalization.CultureInfo
Public Shared Function GetCultureInfo (name As String) As CultureInfo

参数

name
String

区域性的名称。 name 不区分大小写。

返回

只读 CultureInfo 对象。

例外

name 为 null。

name 指定不支持的区域性。 有关详细信息,请参阅“调用方备注”部分。

注解

有关 Windows 系统上预定义区域性名称的列表,请参阅 Windows 支持的语言/区域名称列表中的“语言标记”列。 列名遵循 BCP 47 定义的标准。 此外,从 Windows 10 开始,name可以是任何有效的 BCP-47 语言标记。

方法 GetCultureInfo 检索缓存的只读 CultureInfo 对象。 它提供的性能优于对构造函数的 CultureInfo.CultureInfo(String) 相应调用。

如果 name 是当前区域性的名称,则返回 CultureInfo 的对象不反映任何用户替代。 这使得 方法适用于系统上没有真实用户帐户且需要有效加载多个区域性的服务器应用程序或工具。

如果 nameString.Empty,则方法返回固定区域性。 这等效于检索 属性的值 InvariantCulture

调用方说明

.NET Framework 3.5 及更早版本如果 name 不是有效的区域性名称,则会引发 ArgumentException 。 从 .NET Framework 4 开始,此方法将CultureNotFoundException引发 。 从在 Windows 7 或更高版本.NET Framework 4 或更高版本下运行的应用开始,该方法会尝试从操作系统检索CultureInfo其标识符为 name 的对象;如果操作系统不支持该区域性,并且name如果 不是补充区域性或替换区域性的名称,则该方法将CultureNotFoundException引发 。

在 .NET 6 及更高版本中, CultureNotFoundException 如果应用在启用了全球化固定模式的环境中运行,例如,某些 Docker 容器和指定了固定区域性以外的区域性,则会引发 。

另请参阅

适用于