解析三个字母的语言名称作为文化信息

Ste*_*ens 6 .net vb.net parsing cultureinfo

我正在使用一个API,它返回一些文件中有关音频流的信息,更具体地说是三字母ISO名称(ISO 639-2)表示中的音频语言.

我想将这些信息解析为一个新的CultureInfo对象,但没有构造函数采用三个字母的代码.我当然可以写一个巨大的选择声明(切换给你C#人),但我认为首先要求更好的方法更具成本效益.我是不是运气不好,或者有一个使用三个字母名称创建CultureInfo对象的秘密方法?

Bal*_*nyi 5

编辑:抱歉,我使用了错误的属性:

public static CultureInfo FromISOName(string name)
{
    return CultureInfo
        .GetCultures(CultureTypes.NeutralCultures)
        .FirstOrDefault(c => c.ThreeLetterISOLanguageName == name);
}
Run Code Online (Sandbox Code Playgroud)

但是,列表中仍然存在重复项,并且不支持"dut".