сбой после чтения текстового файла в tableview

#ios #uitableview #nsmutablearray #nsarray #nsbundle

#iOS #uitableview #nsmutablearray #nsarray #nsbundle

Вопрос:

Я хотел бы прочитать текстовый файл из NSBundle, который я ранее сохранил в Xcode, в массив, чтобы заполнить данные в UITableView.

У меня есть текстовый файл с такой информацией, как «это; является; тестом» с именем cart.txt

Теперь я попробовал следующий код, и я могу заполнить его в массив, но если я попытаюсь установить для строк моего tableview значение array count, все приложение вылетит.

 NSString *filePath = [[NSBundle mainBundle]pathForResource:@"cart" ofType:@"txt"];
if (filePath) {
    NSString *textFromFile = [[NSString alloc]initWithContentsOfFile:filePath];
    lines = [textFromFile componentsSeparatedByString:@";"];
}
  

Я могу прочитать массив строк, подобный textfield.text = [lines objectAtIndes:0]; , в текстовое поле. все работает.

Но если я попытаюсь получить свои данные в tableview или даже установить количество строк на [lines count] , приложение вылетит.

кто-нибудь может мне помочь с этой проблемой?

Я надеюсь на это 🙁

Заранее благодарю вас.

Комментарии:

1. Какова точная ошибка при сбое? Показать трассировку стека.

Ответ №1:

Я предполагаю, что происходит сбой, потому что массив «lines» уже выпущен, когда вы отправляете ему сообщение «count». Попробуйте lines = [[textFromFile componentsSeparatedByString:@";"] retain]; и отпустите «строки» в методе освобождения контроллеров просмотра