我想从NSBundle中读取一个文本文件,我将之前在Xcode中保存到一个数组中,以将数据填充到UITableView中。
我有一个文本文件,其中包含这样的信息“this; is; a; test”,名为cart.txt
现在我尝试了以下代码,我可以将它填充到一个数组中,但是如果我将tableview的行设置为数组计数,则整个应用程序崩溃。
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]
,则应用程序崩溃。
有人可以帮我解决这个问题吗?
我希望如此: - (
提前谢谢。
答案 0 :(得分:0)
我猜它会崩溃,因为当你向它发送“count”消息时,“lines”数组已经被释放了。尝试lines = [[textFromFile componentsSeparatedByString:@";"] retain];
并在视图控制器中释放“行”dealloc方法