Читать файл в массив - PullRequest
       13

Читать файл в массив

6 голосов
/ 22 июня 2009

У меня есть файл слов / фраз, разделенных символами новой строки. Мне нужно получить файл и прочитать каждое слово / фразу в массив. У меня есть это до сих пор:

    NSFileHandle *wordsFile = [NSFileHandle fileHandleForReadingAtPath:[[NSBundle     mainBundle] pathForResource:@"WordList"
                                                                                                           ofType:nil]];
    NSData *words = [wordsFile readDataToEndOfFile];
    [wordsFile closeFile];
    [wordsFile release];

Но я не уверен, правильно ли это, и если да, то куда идти.

Кроме того, ответ чайника на

NSString компонентыSeparatedByCharactersInSet: NSCharacterSet newlineCharacterSet

отлично работает, но только 10,5. Как бы это поведение повторилось для 10,4?

Ответы [ 2 ]

11 голосов
/ 22 июня 2009

Просто для полноты (и потому что мне скучно) вот полный пример, основанный на посте чайника:

    NSString *string = [NSString stringWithContentsOfFile:[[NSBundle mainBundle]
                                                            pathForResource:@"file" ofType:@"txt"]];

    NSArray *array = [string componentsSeparatedByCharactersInSet:[NSCharacterSet newlineCharacterSet]];
    NSLog(@"%@",array);
11 голосов
/ 22 июня 2009

Вот подход, который должен работать - я опущу реальный пример кода, так как реализация должна быть довольно простой, учитывая следующее:

Создайте NSString из вашего файла с помощью:

NSString stringWithContentsOfFile:encoding:error

Разбить строку на массив строк NSS с помощью следующего:

NSString componentsSeparatedByCharactersInSet:
NSCharacterSet newlineCharacterSet

Вы должны получить NSArray из NSStrings, где каждая строка содержит одну из строк в вашем файле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...