我正在尝试使用 Objective-C 从外部 txt 文件(约 180kb)中逐行读取。我在 SO 上找到了这段代码。我理解它的方式,这段代码会将每一行放在一个元素中,对吗?
- (IBAction)start:(id)sender; {
NSString *fh = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:NULL];
for (NSArray *line in [fh componentsSeparatedByString:@"\n"]) {
NSLog(@"output= %@",line[5]);
}
}
我尝试通过在输出中打印一行来检查它是否正常工作,但没有任何反应,我在这里做错了什么?
谢谢,
更新:我进行了建议的更改,结果 fh 确实为零。如果我将 fh 设为一个包含一段文本文件(包括几个 \n)的字符串,它可以正常工作。我检查了文件路径,但这似乎没问题,所以现在的问题是 fh = nil 是怎么来的?
NSString *fh = [NSString stringWithContentsOfFile:@"file:///Users/Mubanga/Documents/Blender/rough2.txt" encoding:NSUTF8StringEncoding error:nil];
if([fh length] == 0) {
NSLog(@"fh=nil");
}
for (NSString *line in [fh componentsSeparatedByString:@"\n"]) {
NSLog(@"output= %@",line);
}
}