0

私のアプリはPDFをダウンロードし、ボタンを押すと新しいビューに表示されます。

エラーが発生します:

-[NSURL initFileURLWithPath:]: nil string parameter'

いくつかのトラブルシューティングの後、このコード スニペットのどこかに問題を固定しました。指しているパスは/Documents、ダウンロードしたpdfが配置されているフォルダーにあります。したがって、ドキュメントはメイン バンドルにはありません。

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];
4

1 に答える 1

0

NSURLあなたが言っているように、有効なパスの代わりにそれを渡しましたnil

nilこれは、その名前でそのようなリソースが見つからなかったことを意味します。確かに、あなたの質問は、あなたがこれをよく知っていることを示唆しています。

アプリが既に PDF をダウンロードしていると主張しているので、実際にそれをディスクに書き出すのでしょうか? その場合、結果のファイルがどこにあるのかを知っておく必要があります。そうでない場合は、まず実際のダウンロード コードを記述する必要があります。

于 2013-04-09T15:53:37.670 に答える