我想检测操作系统上安装的语言。
为此,我运行:
qDebug() << QLocale::system();
// result = QLocale(English, Latin, UnitedStates)
但我想将其保存在QString中,但不能仅执行以下操作:
QString langs = QLocale::system().toString();
如何将结果保存在字符串中?
还是有更好的方法来检测OS语言?
另一件事,是否可以检测键盘语言设置(如果可能,请使用Qt)?
最佳答案
documentation for QLocale指示:
因此,要获得不同的系统默认语言表示,QLocale上的以下一种或多种方法可能会帮助您:
qDebug() << QLocale::system().name();
qDebug() << QLocale::system().nativeCountryName();
qDebug() << QLocale::system().nativeLanguageName();
输出示例:
"en_GB"
"United Kingdom"
"British English"
在GUI应用程序中,您可以获得输入法的类似细节,如下所示:
qDebug() << QGuiApplication::inputMethod()->locale().name();
关于c++ - 检测操作系统语言,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40809314/