我需要一种方法来检测
具体而言,我需要检测
我知道任何英语语言的
因此,我可以简单地检查当前文化名称是否以
Thread.CurrentThread.CurrentCulture
是否使用特定语言。具体而言,我需要检测
CurrentCulture
CultureInfo
对象是否支持/使用/为"英语",而不考虑国家/地区——但是,我可能还想检查其他语言。我知道任何英语语言的
CultureInfo
对象的Name
将以en-
为前缀,然后是地区(US
、GB
等) - 根据MSDN的语言区域名称和代码表。因此,我可以简单地检查当前文化名称是否以
en-
前缀开头:var currentCultureName = Thread.CurrentThread.CurrentCulture.Name;
if (currentCultureName.StartsWith("en-"))
{
// We have an English language culture
}
编辑:同样地(正如Evk所指出的),如果我使用TwoLetterISOLanguageName
,我可能会得到相同的结果:
var twoLetterISOLanguageName =
Thread.CurrentThread.CurrentCulture.TwoLetterISOLanguageName;
if (twoLetterISOLanguageName.Equals("en", StringComparison.InvariantCultureIgnoreCase))
{
// We have an English language culture
}
有没有其他替代方案,或者更安全的方法æ�¥æ£€æŸ¥è¿™ä¸ªé—®é¢˜ï¼Œå�Œæ—¶éœ€è¦�检测其他è¯è¨€ï¼ˆä¾‹å¦‚法è¯ã€�å¾·è¯ç‰ï¼‰ï¼Ÿ- 以é�¿å…�编写å�¯èƒ½å¾ˆå¤§çš„switch
è¯å�¥å�—?
还是我使用的上�的方� - 使用switch
è¯å�¥æ˜¯æœ€å¥½çš„方法?
��感谢您的帮助和建议🙂
WelcomeText
)-因此,某些客户可能希望使用“Hello”或“Welcome”(所有英文)等。但是,有一个特定的客户希望以不同的语言提供该应用程序,因此我想在代码中检查他们的语言是否是“非英语”,然后根据该语言使用本地化版本。 - Geoff James