gpt4 book ai didi

c - 获取用户的国家和键盘语言

转载 作者:太空狗 更新时间:2023-10-29 14:59:43 28 4
gpt4 key购买 nike

为了显示正确的菜单文本和 UI 的其他一些方面,我正在尝试获取当前用户的国家/地区和键盘语言。
我知道语言环境(通过 env. 变量),但我找不到获取这两条信息的方法。

Mac OS X 的代码在 C 中。我可以使用 Cocoa API 获取它们,但需要从 C 调用它们。有什么想法吗?

谢谢!

最佳答案

使用 CFLocaleCopyCurrentCFLocaleGetValueCFLocaleCopyPreferredLanguages(请注意,首选语言可能与区域设置的语言不匹配)。参见 the documentation .

编辑:好的,这是一些示例代码。

#include <CoreFoundation/CoreFoundation.h>
#include <stdio.h>

int main (int argc, char **argv)
{
CFLocaleRef loc = CFLocaleCopyCurrent();
CFStringRef countryCode = CFLocaleGetValue (loc, kCFLocaleCountryCode);
CFStringRef countryName = CFLocaleCopyDisplayNameForPropertyValue (loc, kCFLocaleCountryCode, countryCode);
CFShow(countryCode);
CFShow(countryName);
CFArrayRef langs = CFLocaleCopyPreferredLanguages();
CFStringRef langCode = CFArrayGetValueAtIndex (langs, 0);
CFStringRef langName = CFLocaleCopyDisplayNameForPropertyValue (loc, kCFLocaleLanguageCode, langCode);
CFShow(langCode);
CFShow(langName);
}

关于c - 获取用户的国家和键盘语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6521177/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com