has*_*svn 11 country-codes ios
我需要得到一个字符串像en_US或es_ESiOS中.
显而易见的方法是使用[NSLocale currentLocale]并从那里获取语言信息.但是,这会为您提供"区域格式"而不是实际的设备语言,这意味着如果您使用英语设备语言但区域格式为"西班牙",则会错误地报告es_ES.
如果您需要设备语言,则必须执行以下操作:
[[NSLocale preferredLanguages] objectAtIndex:0]
但是,这只会为您提供语言,因此您可以获得类似en或es最终没有国家/地区代码的内容.
我如何正确获取国家代码,就像Safari一样?
尝试使用以下代码:
NSString *locale = [[NSLocale currentLocale] localeIdentifier];
NSRange startRange = [locale rangeOfString:@"_"];
NSString *result = [locale stringByReplacingCharactersInRange:NSMakeRange(0, startRange.length+1) withString:[[NSLocale preferredLanguages] objectAtIndex:0]];
DebugLog(@"current locale: %@", result);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16987 次 |
| 最近记录: |