我想我在 iOS 捷克语通讯录中发现了一个错误。我已经创建了一个捷克联系人(捷克共和国国家/地区),我在应用程序中使用 ABPeoplePickerNavigationController 选择了该联系人。
ABPeoplePickerNavigationController 返回给我的地址日志是:
"Country" : "Czech Republic"
"Street" : "A street"
"CountryCode" : "cs"
"City" : "A city"
"ZIP" : "12345"
所以国家代码是CS。但是当我尝试检索相应的名称时,
NSString *countryCode = [address objectForKey:(NSString *)kABPersonAddressCountryCodeKey];
if (countryCode != nil) {
NSString *countryName = [[NSLocale currentLocale] displayNameForKey:NSLocaleCountryCode value:countryCode];
name = [[applicationDelegate dataManager] objectForEntityForName:@"Name" withValue:countryName forKey:@"name"];
}
name
给我:“塞尔维亚和黑山”!
根据http://countrycode.org/ ,捷克国家代码是CK,根据http://xml.coverpages.org/country3166.html ,CS是捷克斯洛伐克,但“不再存在”
我在 Apple 会如何讲述这一点?
最佳答案
您混淆了国家/地区代码 (ISO 3166-X) 和语言代码 (ISO 639-X)。 根据 ISO 639-1,捷克语的语言代码是“CS”。
http://en.wikipedia.org/wiki/List_of_ISO_639-2_codes
注意: 很久以前,这也曾经是 ISO 3166-1 中前“捷克斯洛伐克”的国家代码,但由于政治变化,它已多次更改和重新分配(例如塞尔维亚和黑山,现在是“YU”) .
关于iOS : wrong Czech country code,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10929189/