char *currentLocale = setlocale(LC_ALL,"");
在 Windows 中,setlocale 返回“English_United States”,但在 Linux 中,它返回“en_US”。有没有通用的方法来识别英语语言环境?或者我必须检查所有可用的语言环境值? (“English_United States” || “en_US” || 等)
最佳答案
您可能需要检查:
http://en.wikipedia.org/wiki/Locale
http://en.wikipedia.org/wiki/ISO_639
理论上,Windows、Linux、MAc 和其他操作系统。可能有支持“语言下划线国家”格式的函数库,即使它们有自己的内部标准:
关于c++ - 各种操作系统的语言环境格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11457907/