【发布时间】:2010-10-28 14:54:49
【问题描述】:
如何在IOS中获取当前的ISO语言代码?
【问题讨论】:
如何在IOS中获取当前的ISO语言代码?
【问题讨论】:
[[NSLocale currentLocale] localeIdentifier] 会给你一个更接近你正在寻找的字符串。对于我在美国的设备,我得到“en_US”。
如果你想要一个更标准的“en-US”,你可以改用[[[NSLocale currentLocale] localeIdentifier] stringByReplacingOccurrencesOfString:@"_" withString:@"-"]。
如果你只想要语言代码,你可以将[[NSLocale currentLocale] localeIdentifier] 的输出传递给[NSLocale componentsFromLocaleIdentifier:],这会给你一个NSDictionary。字典中的一个键是NSLocaleLanguageCode,它将有一个 NSString 对象,其中只有语言代码。
【讨论】:
查看 Apple 文档以获取 Internationalization Programming Topics
【讨论】:
NSString *isoCode = [[NSLocale preferredLanguages] objectAtIndex:0];
这将返回设备上所选语言的 2 个字母 iso 代码。 “en”表示英语,“de”表示德语,等等。 希望对您有所帮助!
【讨论】:
"zh-Hans" 的字符串。做出这样的假设可能会造成伤害。