與 CultureInfo 物件相關的名稱
與 CultureInfo 和相關類別關聯的文化特性名稱具有幾種不同的變化,例如 CompareInfo。 依據用於 CultureInfo 的建構函式而定,文化特性名稱會以不同的方式處理。 此類別會定義兩個建構函式,供應用程式對其傳遞文化特性名稱,另外還會定義兩個建構函式,以處理由識別項表示的文化特性。
使用文化特性名稱建構文化特性資訊時的名稱處理
傳遞文化特性名稱以建立 CultureInfo 物件時,您的應用程式可以使用接受表示名稱之字串的任何一個建構函式。 請考量傳遞下列三個字串的範例:
"en-US" 表示英文 (美國)
"de-DE_phoneb" 表示德文 (德國),其使用電話簿排序的替代排序方式
"fj-FJ" 表示自訂文化特性,這個文化特性使用 "en-US" 排序次序進行字串比較
下表顯示由其中一個字串型 CultureInfo 建構函式和相關程式設計項目處理的文化特性名稱。
項目 |
en-US |
de-DE_phoneb |
自訂文化特性 |
---|---|---|---|
CultureInfo 建構函式 |
en-US |
de-DE_phoneb |
fj-FJ |
CultureInfo.ToString |
en-US |
de-DE_phoneb |
fj-FJ |
CultureInfo.Name |
en-US |
de-DE |
fj-FJ |
TextInfo.CultureName |
en-US |
de-DE |
fj-FJ |
CompareInfo.Name |
en-US |
de-DE_phoneb |
en-US |
CultureInfo.ToString 永遠都會傳回與建構函式傳入值相同的值,不過它會「正規化」大小寫。 例如,如果應用程式將 "En-Us" 傳遞到建構函式,ToString 便會傳回 "en-US"。 CultureInfo.Name 永遠都會提供排除任何替代排序方法指示的「簡短」形式名稱 (例如以 "de-DE" 取代 "de-DE_phoneb")。
TextInfo.CultureName 永遠與 CultureInfo.Name 相同。 最後,CompareInfo.Name 會傳回排序的名稱,即使與文化特性名稱的本身完全無關也是如此。
使用文化特性識別項建構文化特性資訊時的名稱處理
您的應用程式也可以傳遞文化特性識別項來建構 CultureInfo 物件。 在這種情況下,應用程式可以使用其中一個接受識別項值的建構函式。 請考量將下列文化特性識別項傳遞到建構函式的範例:
0x0409 表示英文 (美國)
0x10407 表示德文 (德國),其使用電話簿排序
0x0c00 表示自訂文化特性 "fj-FJ";這個文化特性必須是目前預設的使用者文化特性;假設這個自訂文化特性使用 "en-US" 排序次序進行字串比較
下表顯示由其中一個識別項型 CultureInfo 建構函式和相關程式設計項目處理的文化特性命名方式。 請注意,這些名稱與前面的範例完全相同。
項目 |
en-US |
de-DE_phoneb |
自訂文化特性 |
---|---|---|---|
CultureInfo 建構函式 |
0x0409 |
0x0407 |
0x0C00 |
CultureInfo.ToString |
en-US |
de-DE_phoneb |
fj-FJ |
CultureInfo.Name |
en-US |
de-DE |
fj-FJ |
TextInfo.CultureName |
en-US |
de-DE |
fj-FJ |
CompareInfo.Name |
en-US |
de-DE_phoneb |
en-US |