2014-04-10 1 views
0

와 장치에 국가 이름에 국가 코드 변환이 (에서 촬영 - Converting Country Codes to Country Names) 내가 사용하고있는 코드 나는이거야 영어와 장치에이영어 이외의 언어

NSLocale *locale = [NSLocale currentLocale]; 
    NSString *countryCode = [locale objectForKey: NSLocaleCountryCode]; 
    NSString *identifier = [NSLocale localeIdentifierFromComponents: [NSDictionary dictionaryWithObject: countryCode forKey: NSLocaleCountryCode]]; 
    NSString *country = [[NSLocale currentLocale] displayNameForKey: NSLocaleIdentifier value: identifier]; 

: "아르헨티나"

하지만, 다른 언어와 장치에 나는 같은 것을 얻을 것이다 : "\ U05d0 \ U05e8 \ U05d2 \ U05e0 \ U05d8 \ U05d9 \ U05e0 \ U05d4"

어떤 생각을 을?

+0

당신은 장치 (또는 시뮬레이터) 히브리어의 로컬 언어를 설정 했습니까? –

+0

iOS 7 문자열은 "오레곤"형식입니다 (유니 코드 형식). 두 사람이 같은 로케일과 언어를 사용하고 있습니까? –

+0

나는 ... 운영 체제 버전과는 아무런 관련이 없지만 장치의 정의는 ... 그렇다면 장치가 다른 언어와 함께 있으면 어떻게 영어 이름을 찾을 수 있습니까? – Yossi

답변

3

그것은 히브리어이며 argntynhe 또는 argntynhe 정도를 의미합니다. (유감스럽게도 히브리어를 말하지 않고 유니 코드를 의미있는 것으로 변환했습니다.)

로캘을 초기화하는 데 사용 된 로캘 식별자 또는 장치의 언어 설정을 확인하십시오.

시도해보십시오.

NSLocale myLocale = [NSLocale localeWithLocaleIdentifier:@"en_US"]; 
NSString *country = [myLocale displayNameForKey: NSLocaleIdentifier value: identifier]; 

상수 @ "en_US"에 대해서는 긍정적이지 않습니다. 나는 그것을 머리 위로 꺼냈다. 적절한 가치에 대한 Google.

또한 워드 프로세서 : https://developer.apple.com/library/mac/documentation/cocoa/reference/foundation/classes/NSLocale_Class/Reference/Reference.html

+0

감사합니다. 기기가 다른 언어를 사용하는 경우 어떻게 영어 이름을 찾을 수 있습니까? – Yossi

+0

잠시 나랑 벗었 어. 나는 너를 위해 그것을 체크하고 대답을 편집 할 것이다. –

+0

고마워, 그것은 작동 ... – Yossi