![](/img/trans.png)
[英]Unable to play local mp3 file stored in documents directory using AVAudioPlayer
[英]NSInputStream returned nil for file stored in local documents directory
我正在尝试解析下载的CSV文件的内容。 该文件存储在本地文档目录中的文件夹中。
文件路径 :/ Users / xyz / Library / Developer / CoreSimulator / Devices / C04089B6-4B9F-4F3A-A7C4-82225024CBE4 / data / Containers / Data / Application / 7412C7C6-71C7-47FE-810B-965116A6071C / Documents / rndftp / 99999920150415152
我正在使用此方法创建NSInputStream:
- (instancetype)initWithContentsOfDelimitedURL:(NSURL *)URL delimiter:(unichar)delimiter {
NSInputStream *stream = [NSInputStream inputStreamWithURL:URL];
return [self initWithInputStream:stream usedEncoding:NULL delimiter:delimiter];
}
在这里, URL是[NSURL URLWithString:filepath],但是为此, 流为nil。
因此,它在这里崩溃:
CHCSVParser *parser = [[CHCSVParser alloc] initWithContentsOfCSVURL:[NSURL URLWithString:filePath]];
[parser parse];
NSArray *latestFileComponentsArray = [NSArray arrayWithContentsOfCSVURL:[NSURL URLWithString:filePath]];
与错误:
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: stream'
可能是什么原因呢? 我正在使用CHCSVParser开源来解析csv文件。
不好意思 ,这里有一个小警告:如果文件是本地下载的,我们将URL指定为fileURLwithPath :而不是URLWithString :,因此可以将导致错误的代码纠正为:
CHCSVParser *parser = [[CHCSVParser alloc] initWithContentsOfCSVURL:[NSURL fileURLWithPath:filePath]];
[parser parse];
NSArray *latestFileComponentsArray = [NSArray arrayWithContentsOfCSVURL:[NSURL fileURLWithPath:filePath]];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.