因此,根据我的理解,大多数亚洲文化在给出名字之前都有姓氏。
说我有 string firstName =" Andy" string surName =" Peterson"
根据当地情况,我想以Andy Peterson和Petersen Andy的身份出示他的名字。
C#中是否有任何内置方法?我正在思考string.format(" Andy"," Peterson",Culture.Info(" en-GB"))。
答案 0 :(得分:0)
使用String.Format
获取人名,同时将格式字符串存储在Resources
中。资源是特定于文化的,您可以根据您支持的每种文化定义不同的格式字符串。
因此,如果您创建一个名为PersonFullNameFormat
的字符串资源,则可以为en-US定义为"{0} {1}"
,为ru-RU定义"{1} {0}"
。然后您可以按如下方式获取人名:
var fullName = string.Format(Resources.PersonFullNameFormat, firstName, lastName);
默认情况下,Resources
会根据Thread.CurrentThread.CurrentUICulture
返回值。最初,它匹配操作系统中的选定文化,但您可以通过将Thread.CurrentThread.CurrentUICulture
设置为您想要的文化来覆盖它:
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en-GB");
有关详细信息,请参阅: