C# 如何将中性区域性映射到CultureInfo.CreateSpecificCulture方法中的特定区域性?

C# 如何将中性区域性映射到CultureInfo.CreateSpecificCulture方法中的特定区域性?,c#,.net,localization,cultureinfo,C#,.net,Localization,Cultureinfo,我不知道中性文化是如何映射到特定文化的。它是静态的吗 en = en-US fr = fr-FR pt = pt-BR 我查过了 & 来自中国的本地养殖数据 但我不明白。有人能帮忙吗?我认为这里没有精确的映射 en和en-US文化因其顺序不同而不同,其顺序为0x0009和0x0409。en是一种神经文化,与一种语言相关,但与一个国家或地区无关 但是en-US是一种与一种语言和一个国家或地区相关联的特定文化 这就是为什么您可以使用en-US var region = new R

我不知道中性文化是如何映射到特定文化的。它是静态的吗

en = en-US    
fr = fr-FR    
pt = pt-BR
我查过了

& 来自中国的本地养殖数据

但我不明白。有人能帮忙吗?

我认为这里没有精确的映射

en
en-US
文化因其顺序不同而不同,其顺序为
0x0009
0x0409
en
是一种神经文化,与一种语言相关,但与一个国家或地区无关

但是
en-US
是一种与一种语言和一个国家或地区相关联的特定文化

这就是为什么您可以使用
en-US

var region = new RegionInfo("en-US");
但是您不能使用
en

var region = new RegionInfo("en");
它说,

地区名称
en
对应中性文化;A. 需要特定的区域性名称

CultureInfo
对象之间存在一个层次结构,特定区域性的父对象是中性区域性,而中性区域性的父对象是中性区域性

让我为您设想一下这个层次结构如何适用于
en
中立文化:


几乎,文化之间存在一种父关系。您可以通过以下方式查看:

var specificCultures = System.Globalization.CultureInfo.GetCultures(System.Globalization.CultureTypes.SpecificCultures);
foreach (var culture in specificCultures)
{
     var text = "Specific: " + culture.Name + " Parent: " + culture.Parent.Name;
     Console.WriteLine(text);
}
给出(输出摘录):

特定:ar SA父项:ar
特定:bg bg父项:bg
特定:ca ES父项:ca
特定:zh TW父项:zh CHT
特定:cs CZ父项:cs
具体:da DK父项:da
特定:de父项:de
特定:el GR父项:el
具体:en-US父项:en
特定:fi父项:fi
特定:fr父项:fr
具体:他/她父母:他

您可以从这个代码段中看到
zh-TW
的父级是
zh-CHT
。但这最终还是要归结到
zh
(通过
zh-Hant
)。跟随某一特定文化的父母最终会让你陷入一种中立的文化