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 物件,而這些物件是用來初始化 namealtName 不區分大小寫。

傳回

唯讀 CultureInfo 物件。

例外狀況

namealtName 為 null。

namealtName 指定不受支援的文化特性。 如需詳細資訊,請參閱<呼叫者注意事項>一節。

備註

如需 Windows 系統上預先定義的文化特性名稱清單,請參閱Windows 所支援語言/區功能變數名稱稱清單中的語言標籤資料行。 文化名稱遵循 BCP 47 定義的標準。 此外,從 Windows 10 開始, name 可以是任何有效的 BCP-47 語言標記。

方法 GetCultureInfo 會取得快取的唯讀 CultureInfo 物件。 其效能優於對建構函式的 CultureInfo 對應呼叫。 方法可用來建立類似 參數所 name 指定的文化特性,但有不同的排序和大小寫規則。

如果 namealtName 是目前文化特性的名稱,則傳回的物件不會反映任何使用者覆寫。 如果 為 nameString.Empty ,則方法會傳回不可變的文化特性。 這相當於擷取 屬性的值 InvariantCulture 。 如果 altNameString.Empty ,則方法會使用不變異文化特性所指定的寫入系統和比較規則。

給呼叫者的注意事項

如果 或 altName 不是有效的文化特性名稱,.NET Framework 3.5 和舊版會擲 ArgumentExceptionname 回 。 從 .NET Framework 4 開始,這個方法會擲回 CultureNotFoundException 。 從在 Windows 7 或更新版本上.NET Framework 4 或更新版本下執行的應用程式開始,此方法會嘗試擷取 CultureInfo 識別碼 name 來自作業系統的物件;如果作業系統不支援該文化特性,而且如果 name 不是補充或取代文化特性的名稱,方法會 CultureNotFoundException 擲回例外狀況。

在 .NET 6 和更新版本上, CultureNotFoundException 如果應用程式是在啟用全球化-invariant 模式的環境中執行,則會擲回 ,例如,某些 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 和舊版會擲回 ArgumentExceptionculture 。 從 .NET Framework 4 開始,這個方法會擲回 CultureNotFoundException 。 從在 Windows 7 或更新版本上.NET Framework 4 或更新版本下執行的應用程式開始,此方法會嘗試擷取 CultureInfo 識別碼 culture 來自作業系統的物件;如果作業系統不支援該文化特性,方法會 CultureNotFoundException 擲回 。

在 .NET 6 和更新版本上, CultureNotFoundException 如果應用程式是在啟用全球化-invariant 模式的環境中執行,則會擲回 ,例如,某些 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 和舊版會擲回 ArgumentExceptionname 。 從 .NET Framework 4 開始,這個方法會擲回 CultureNotFoundException 。 從在 Windows 7 或更新版本上.NET Framework 4 或更新版本下執行的應用程式開始,此方法會嘗試擷取 CultureInfo 識別碼 name 來自作業系統的物件;如果作業系統不支援該文化特性,而且如果 name 不是增補或取代文化特性的名稱,方法會 CultureNotFoundException 擲回 。

在 .NET 6 和更新版本上, CultureNotFoundException 如果應用程式是在啟用全球化-invariant 模式的環境中執行,則會擲回 ,例如,某些 Docker 容器,以及指定非變異文化特性以外的文化特性。

另請參閱

適用於