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

返回

CultureInfo

区域性的只读实例。

注解

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

如果将设置为,则 predefinedOnly true 只有在平台具有该区域性的实际数据时,才会创建区域性。

适用于

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

只读 CultureInfo 对象。

例外

namealtName 为 null。

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

注解

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

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

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

调用方说明

.NET Framework 3.5 及更早版本引发 ArgumentException if namealtName 不是有效的区域性名称。 从 .NET Framework 4 开始,此方法将引发 CultureNotFoundException 。 从 Windows 7 或更高版本下的 .NET Framework 4 或更高版本下运行的应用程序,该方法将尝试检索 CultureInfo 其标识符 name 来自于操作系统的对象; 如果操作系统不支持该区域性,则该方法将 name 引发 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

只读 CultureInfo 对象。

例外

culture 小于零。

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

注解

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

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

调用方说明

.NET Framework 3.5 及更早版本引发(如果不是 ArgumentException culture 有效的区域性标识符)。 从 .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

只读 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 及更早版本引发(如果不是 ArgumentException name 有效的区域性名称)。 从 .NET Framework 4 开始,此方法将引发 CultureNotFoundException 。 从 Windows 7 或更高版本下的 .NET Framework 4 或更高版本下运行的应用程序,该方法将尝试检索 CultureInfo 其标识符 name 来自于操作系统的对象; 如果操作系统不支持该区域性,则该方法将 name 引发 CultureNotFoundException

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

另请参阅

适用于