我试图逐行读取文本文件,而该文本文件将是一个非常小的文件,因此我只使用了:
NSString *fileContents = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil];
但是,在该行上引发了一个异常,说:
[NSURL getFileSystemRepresentation:maxLength:]: unrecognized selector sent to instance 0x7f92c40e1890
我真的是Objective-C的新手,我不知道为什么会这样...
提前致谢。
NSString *filePath;
NSOpenPanel *fileBrowser = [NSOpenPanel openPanel];
[fileBrowser setCanChooseFiles:YES];
[fileBrowser setCanChooseDirectories:YES];
if ([fileBrowser runModal] == NSOKButton) {
NSArray *files = [fileBrowser URLs];
for ( int i = 0; i < [files count]; i++ ) {
filePath = [files objectAtIndex:i];
}
}
这是因为[fileBrowser URLs]部分吗?
谢谢。
最佳答案
看起来filePath
是NSURL
,但是stringWithContentsOfFile:encoding:error:
期望路径是NSString
。
尝试这个:
NSString *fileContents = [NSString stringWithContentsOfURL:filePath encoding:NSUTF8StringEncoding error:nil];
关于objective-c - 文件读取过程中的Objective C异常?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10068544/