Я нашел ответ на свой вопрос, и, поскольку он связан с этим вопросом, я делюсь им, чтобы он мог помочь, если кому-то еще это нужно.
Файл, содержащий коды ошибок и локализованные описания, находится в /System/Library/Frameworks/Foundation.Framework/Resources/en.lproj/FoundationErrors.strings
Скопируйте этот файл и вставьте куда-нибудь еще (чтобы не испортить исходный файл). Теперь запустите команду в терминале, чтобы преобразовать двоичный файл в текстовый файл:
plutil -convert xml1 FoundationErrors.strings
Теперь перетащите файл в проект XCode, щелкните правой кнопкой мыши и выберите Open as... Property list
. Теперь у вас есть ключи и описания. Вы можете перевести (если желаемый язык недоступен в локализации) или настроить их так, как вам нужно, и сохранить его с нужным именем, которое в моем случае будет Persian.strings
.
Теперь добавьте этот код в метод, в котором вы хотите его использовать:
//persian error messages file full path
NSString * persianErrorsListFile = [[[NSBundle mainBundle] bundlePath] stringByAppendingPathComponent:@"Persian.strings"];
//Load file as dictionary
NSDictionary * persianErrorsList = [[NSDictionary alloc] initWithContentsOfFile:persianErrorsListFile];
NSString *errorKey = [NSString stringWithFormat:@"Err%ld", (long)errorCode];
NSString *errorMessage = persianErrorsList[errorKey];