Как я могу преобразовать трехбуквенные имена языков ISO639-3 (например, «PLK», «DEU», «ENU») в языковые коды (то есть. 0x0415 для PLK, 0x0407 для DEU, 0x0409 для ENU) или в культуруимя (например, "pl-PL" для PLK, "de" для DEU, "en-US" для ENU)?
Мне нужно сделать обратное преобразование из одного вследующая строка кода:
GetLocaleInfoA(0x0415, LOCALE_SABBREVLANGNAME, buffer.data(), buffer.size());
// now buffer will have "PLK"
Я хотел бы написать что-то вроде:
LCID langCode = SomeMagicalFunctionThatISearchFor("PLK");
//and landCode should be now 0x0415 (1045 in decimal)
Мой код предназначен для Microsoft Windows, поэтому возможно использование WinAPI.