[英]Exclude UICulture string (ex: en-US) from URL generated by UrlHelper.Action?
[英]Get language name from locale string using .NET? ex: en_us => english
如何找到給定語言環境的語言?
示例:input:en_US輸出:英文
使用.NET庫? 我嘗試過CultureInfo類,但是找不到有用的東西。
謝謝!
不要使用CultureInfo
的構造函數。 使用靜態GetCultureInfo
方法更快,因為此方法被緩存並返回一個不可變(只讀) CultureInfo
對象。
根據有關本地化的Facebook SDK文檔 ,可以安全地假設您可以用破折號替換下划線,以便.NET能夠理解語言環境。
Facebook區域設置分別遵循ISO語言和國家/地區代碼,以下划線連接。
基本格式為'll_CC'',其中''ll''是雙字母語言代碼,''CC''是雙字母國家代碼。 例如,'en_US'代表美國英語。
根據您是否需要以英語顯示名稱而不管操作系統的語言,請使用
CultureInfo.GetCultureInfo("en-US").EnglishName
如果您需要操作系統語言的名稱,請使用:
CultureInfo.GetCultureInfo("en-US").DisplayName
你需要使用en-US而不是en_US代碼如下:
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");
string name = culture.DisplayName;
輸出:英語(美國)
System.Globalization.CultureInfo.GetCultureInfo("en-US").EnglishName;
您可以使用以下代碼
Dim culture1 As CultureInfo = New CultureInfo("en-US")
Dim t As Thread = Thread.CurrentThread
Dim currentCulture As CultureInfo = t.CurrentCulture
Dim currentUICulture As CultureInfo = t.CurrentUICulture
'*** display cultures in console
Console.WriteLine("Current Culture: " & currentCulture.Name)
Console.WriteLine("Current UI Culture: " & currentUICulture.Name)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.