程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C# CultureInfo 和CultureUIInfo的區別

C# CultureInfo 和CultureUIInfo的區別

編輯:C#入門知識

有幾個概念先要了解一下:全球化,本地化

全球化:簡單說就是你開發的應用程序能夠跨越多個文化地區使用,而不必顧慮語言和地區的差別.就是說我的程序在中國以中文的形勢顯示,到了俄國能以俄文的形勢顯示.

本地化:使用一種本地特有的文化和語言顯示創建,存儲,輸入,輸出數據的內容的過程.文化影響日期的顯示格式(如顯示mm/dd/yyyy還是dd/mm/yyyy),貨幣顯示格式.

 

 世界分為若干個文化和區域.文化是基於語言和文化習慣的一組特性.語言與文化相互依賴,相互影響,語言是文化的重要載體.RFC 1766 定義了文化的名稱,這些名稱根據語言和國家或區域的不同在世界各地使用。例如 en-AU 、 en-CA 、 en-GB 和 en-US 分別用於表示澳大利亞、加拿大、英國和美國的英語。一個區域有多種語言像(中國,台灣,香港這個區域

,說的都是中文,但是有(zh-CHS(簡體中文),zh-TW(台灣中文),zh-HK(香港中文)),一種語言也可以在多個

區域使用,像(墨西哥,西班牙,阿根廷,秘魯都說西班牙語).

本地化是通過(語言+地理位置)實現的.

例如:fr是法語語言的代碼,而fr-FR意味著是法國使用的語言.因此fr僅僅是指定的語言,而fr-FR才實現了本地化.同樣fr-CA帶表加拿大法語的本地化.如果我們僅僅使用fr它僅代表一種中立性的文化.

現在要區別這三個名次的區別:特定文化,中立文化,不變的文化

 

特定文化:在引用上面的例子fr-FR和fr-CA就是特定的文化,分別代表法國法語和加拿大法語. 如果只有fr表示法語.是一種中立的文化.

有時候應用程序不必為每個特定文化翻譯,如果法國和加拿大說的法語沒有太大區別的話,可以使用中立的文化本地化應用程序.

而不需要特定的文化.

 

不變的文化(Invaraint Culturre):固定區域性不區分區域性。應用程序可通過語言標識符或使用空字符串 ("") 的名稱來指定固定區域性。InvariantCulture 用於檢索固定區域性的實例。它與英語語言關聯,但不與任何國家/地區關聯。Globalization 命名空間中需要設置區域性的幾乎所有方法都使用固定區域性。這個是我從msdn上抄來的.

 

     

\

 

 

 

  
 

CurrentCulture和CurrentUICulture

設置文化時必須區分用戶界面的文化和數字及日期格式的文化。文化與線程相關,

有了這兩種文化類型,就可以把兩個文化設置應用於線程。用線程設置文化時,

Thread 類提供了屬性 CurrentCulture 和 CurrentUICulture 。屬性 CurrentCulture

用於設置與格式化和排序選項一起使用的文化,而屬性 CurrentUICulture 用於設置用戶界面的語言。

使用 Windows 控制面板中的“區域和語言”選項,用戶就可以改變 CurrentCulture 的默認設置,

如圖 17-3 所示。使用這個配置,還可以改變文化的默認數字、時間和日期格式。

CurrentUICulture 不依賴於這個配置,而依賴於操作系統的語言。

這有一個例外:如果 Windows XP 或 Windows 2000 安裝了多語言用戶

界面 (Muti-language User Interface, MUI) ,就可以用區域配置改變用戶界面的語言,

這會影響 CurrentUICulture 屬性。

Resources.zh-CHS.resx ,注意到新的名稱新增加的部分必須是文化

圖 顯示了文化類型的相互關系。

    

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved