我正在为iOS应用程序编写服务器API.作为初始化过程的一部分,应用程序应通过API调用将电话界面语言发送到服务器.
问题是Apple 在其功能中使用了称为IETF BCP 47语言标识符的东西.NSLocale preferredLanguages
返回的值具有不同的长度(例如[aa, ab, ace, ach, ada, ady, ae, af, afa, afh, agq, ...],我发现很少的解析器可以将此代码转换为适当的语言标识符.
我想使用更常见的ISO-639-2三字母语言标识符,它无处不在,有许多语言的许多解析器,并且有一个标准的3个字母的语言表示.
如何将IETF BCP 47语言标识符转换为ISO-639-2三字母语言标识符,最好是在Python中?
我需要将"匈牙利语","英语"等语言名称转换为ISO 639代码.ISO 639-6将是最好的,但ISO 639-2已经足够好了.实现这一目标的最佳方法是什么?
我应该将英语转换为语言环境并使用getLanguage()获取语言?如果这是唯一的方法如何将像'English'这样的字符串转换为java语言环境?
我的目标是使用ISO 639代码存储书籍语言信息.