尝试在新视图中打开下载的pdf时崩溃

时间:2013-04-09 15:22:13

标签: path nsurl

我的应用程序下载pdf,然后按下按钮将其显示在新视图中。

我收到错误:

-[NSURL initFileURLWithPath:]: nil string parameter'

经过一些故障排除后,我将问题固定在此代码段中的某个位置。指向的路径位于下载pdf的/Documents文件夹中。因此,该文件不在主要包中。

NSString *path = [[NSBundle mainBundle] pathForResource:PDFpathwithextension ofType:@"pdf"];
NSURL *url = [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:url];

以下是下载代码:

//Start an NSURL connection to download from the remotepath
  NSData *pdfData = [[NSData alloc] initWithContentsOfURL:remotepathURL];

//Store the Data locally as PDF File
  NSString *resourceDocPath = [[NSString alloc] initWithString:[[[[NSBundle mainBundle]  resourcePath] stringByDeletingLastPathComponent] stringByAppendingPathComponent:@"Documents"]];

  NSString *filePath = [resourceDocPath stringByAppendingPathComponent:[newdata.ThirdPickerName stringByAppendingFormat:@".pdf"]];
  pdfData writeToFile:filePath atomically:YES];

1 个答案:

答案 0 :(得分:0)

正如NSURL告诉您的那样,您已将其移至nil而非有效路径。

nil这意味着该名称无法找到此类资源。实际上,你的问题表明你很清楚这一点。

由于您声称您的应用已经下载了PDF,它是否真的将其写入磁盘?如果是这样,您应该知道 生成的文件来自哪里。如果没有,您首先需要编写实际的下载代码!