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

傳回

CultureInfo

唯讀 CultureInfo 物件。

例外狀況

namealtName 為 null。

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

備註

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

方法會取得快取 GetCultureInfo 的唯讀 CultureInfo 物件。 它比對應的函式呼叫提供更佳的效能 CultureInfo 。 方法是用來建立類似于參數所指定的文化特性 name ,但使用不同的排序和大小寫規則。

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

給呼叫者的注意事項

.NET Framework 3.5 和較早的版本 ArgumentException 會擲回 if 或不是 name altName 有效的文化特性名稱。 從 .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 如果應用程式是在啟用全球化非變異模式的環境中執行,則會擲回 a (例如,某些 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 物件不會反映任何使用者覆寫。

給呼叫者的注意事項

如果不是 ArgumentException 有效的文化特性識別碼,.NET Framework 3.5 和較早的版本會擲回 culture 。 從 .NET Framework 4 開始,這個方法會擲回 CultureNotFoundException 。 從 Windows 7 或更新版本的 .NET Framework 4 或更新版本下執行的應用程式開始,方法會嘗試取出 CultureInfo 識別碼 culture 來自作業系統的物件; 如果作業系統不支援該文化特性,則方法會擲回 CultureNotFoundException

在 .NET 6 和更新版本中, CultureNotFoundException 如果應用程式是在啟用全球化非變異模式的環境中執行,則會擲回 a (例如,某些 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 物件不會反映任何使用者覆寫。 這讓方法適用于在系統上沒有真正使用者帳戶,且需要有效率地載入多個文化特性的伺服器應用程式或工具。

如果 name 為,則方法會傳回不因文化特性而異 String.Empty 。 這相當於取出屬性的值 InvariantCulture

給呼叫者的注意事項

如果不是 ArgumentException 有效的文化特性名稱,.NET Framework 3.5 和較早的版本會擲回 name 。 從 .NET Framework 4 開始,這個方法會擲回 CultureNotFoundException 。 從 Windows 7 (含)以後版本的 .NET Framework 4 或更新版本下執行的應用程式,此方法會嘗試取出 CultureInfo 識別碼 name 來自作業系統的物件; 如果作業系統不支援該文化特性,而且如果不 name 是增補或取代文化特性的名稱,則方法會擲回 CultureNotFoundException

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

另請參閱

適用於