Хранить локализованные строковые данные на iPhone - PullRequest
1 голос
/ 26 мая 2011

Предположим, что я хочу сохранить ( и позже обновить через Интернет ) простую базу данных слов с их определением: - этикетка - определение

По вашему мнению, как лучше всего хранить их на разных языках?

есть метка и определение на французском и английском языках, и позже мы могли бы добавить другие языки.

РЕДАКТИРОВАТЬ: на данный момент я могу думать только о третьем свойстве: язык

  • этикетки
  • определение
  • язык

Я бы определил оценщика, который будет возвращать язык в соответствии с текущими настройками или английский по умолчанию.

Coredata не поддерживает локализацию данных? поддерживает локализацию имен свойств

Ответы [ 2 ]

1 голос
/ 26 мая 2011

при условии, что у вас большой набор слов, вы можете сохранить их как массив (ы)

, как описано здесь: http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSData_Class/Reference/Reference.html#//apple_ref/doc/uid/20000172-CIAEAHFJ

пример:

NSString *errString;
NSData *serialized =[NSPropertyListSerialization dataFromPropertyList:imgsData
                                               format:NSPropertyListBinaryFormat_v1_0
                                     errorDescription:&errString];

    [serialized writeToFile:dataFilePath atomically:YES];

    if (errString)
    {
        NSLog(@"%@" errString);
        [errString release]; // exception to the rules
    }

Чтобы прочитать это обратно, используйте

NSString *errString;
NSData *serialized = [NSData dataWithContentsOfFile:data
FilePath];



imgsData =
    [NSPropertyListSerialization propertyListFromData:serialized
                                     mutabilityOption:NSPropertyListMutableContainers
                                               format:NULL
                                     errorDescription:&errString];

if (errString)
{
    NSLog(@"%@" errString);
    [errString release]; // exception to the rules
}
0 голосов
/ 26 мая 2011

Вы должны локализовать свои текстовые строки и поддерживать переводы для языка, который вы хотите использовать.Есть много учебников о том, как этого можно достичь.Это больше похоже на отображение перечислений в текст.И текст будет возвращен на языке, который вы просите. Здесь является хорошей отправной точкой для ваших требований.Следуйте инструкциям там, и вы сможете изменить их в соответствии со своими потребностями, как только освоите локализацию строк.

...