私のプロジェクトにはPDFがあります。私はそのファイルをモバイルディレクトリにダウンロードして他のアプリにロードする機能を提供したいと思います。Appディレクトリからローカルにファイルをダウンロードして読み込む方法
答えて
NSError *error;
NSFileManager *fileManager = [NSFileManager defaultManager];
//NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0]stringByAppendingPathComponent:@"/RTOFiles"];;
if (![[NSFileManager defaultManager] fileExistsAtPath:documentsDir])
[[NSFileManager defaultManager] createDirectoryAtPath:documentsDir withIntermediateDirectories:NO attributes:nil error:&error];
NSString *pdfName = @"form_1.pdf";
NSString *docPdfFilePath = [documentsDir stringByAppendingPathComponent: pdfName];
//Using NSFileManager we can perform many file system operations.
BOOL success = [fileManager fileExistsAtPath: docPdfFilePath];
if (!success) {
NSString *samplePdfFile = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent: pdfName];
success = [fileManager copyItemAtPath: samplePdfFile toPath: docPdfFilePath error: &error];
if (!success)
// NSAssert1(0, @"Failed to copy file ‘%@’.", [error localizedDescription]);
NSLog(@"Failed to copy %@ file, error %@", pdfName, [error localizedDescription]);
else {
NSLog(@"%@ File copied to %@", pdfName,documentsDir);
}
}
else{
NSLog(@"File already Exists !");
}
これは、docsディレクトリ内のアプリケーションバンドルにもあるため、ダブルメモリを使用します。あなたは、アプリケーションバンドルから直接ファイルを使用することができます。私はそれを参照して回答を書いています。 – Lion
それはのようなアプリのbunldleである場合は、直接自分のイメージを使用することができ、
UIImage *img = [UIImage imageNamed:@"Amy.png"];
あなたは、あなたのような何かを行うことができ、アプリケーションバンドルからwebview
でpdf
をロードしたい場合は、
NSString *path = [[NSBundle mainBundle] pathForResource:@"yourPdfName" ofType:@"pdf"];
NSURL *url = [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[webView loadRequest:request];
つまり、アプリケーションバンドルでファイルを利用できる場合は、ダブルメモリを使用するため、documentDirectory
にコピーする必要はありません。バンドルから使用しました。
ユーザーがアプリケーションからファイルを開こうとしている場合、ドキュメントディレクトリで開くこともできますので、これを使用しました。ご協力ありがとうございます ! –
ユーザーはアプリバンドルから直接開くことができます。アプリバンドルにある場合は、documentdirectoryにコピーする必要はありません。 – Lion
- 1. 宣言されたディレクトリからファイルを読み込む方法
- 2. FirebaseからHTMLファイルをダウンロードしてwebviewに読み込む方法は?
- 3. OS X/Cocoa - ディレクトリからすべてのファイルを読み込む方法?
- 4. VueJS - ローカルjsonファイルからvis.jsタイムラインにデータを読み込む
- 5. UIWebViewでローカルHTMLファイルを読み込む
- 6. 連絡先ディレクトリからアドレスを読み込む方法は?
- 7. xamrianフォームのWebviewでローカルHTMLファイルを読み込む方法
- 8. ファイルから読み込む
- 9. ファイルから読み込む
- 10. Pythonのディレクトリからn個のファイルを読み込む方法は?
- 11. ローカルのWindowsストアフォルダからjsファイルを読み込む
- 12. ディレクトリをスキャンしてアセンブリを読み込む方法は?
- 13. jsonファイルを読み込んでからgooglemapを読み込む方法
- 14. pubmed記事をダウンロードして読み込む方法は?
- 15. カスタムUITableViewCellでダウンロードイメージをダウンロードして読み込む方法は?
- 16. ios appの特定のディレクトリにテキストファイルを読み込む方法は?
- 17. Visual C++/CLIでファイルに書き込み、ファイルから読み込む方法は?
- 18. Appleポリシー - サーバからJavaスクリプトを読み込む方法について - Cordova App
- 19. Androidコンパイル済みソースからjavaファイルを読み込む方法
- 20. ローカルおよび外部サーバーから画像を読み込み、iphone sdkのwebviewに読み込む方法は?
- 21. ファイルからJFrameを正しく読み込む方法は?
- 22. 新しい設定ファイルから値を読み込む方法
- 23. ftpディレクトリのファイルを読み込み、ダウンロードしないスクリプト
- 24. 複数のファイルをディレクトリから読み込むR
- 25. Javaディレクトリからファイルを開く/読み込む
- 26. テキストファイルから読み込むときにApache Ignite Cacheを読み込む方法
- 27. サーバからTinymceエディタにHTMLファイルを読み込む方法
- 28. CSSファイルからgo.pictureをgojsに読み込む方法
- 29. ファイルをgridfsから配列バイトに読み込む方法は?
- 30. テーブルを.txtファイルからC++に読み込む方法
正しく取得できません。あなたのプロジェクトのpdfは何を意味していますか?あなたのアプリのバンドルで?それがあなたのアプリのバンドルにあれば、なぜそれをダウンロードしたいのですか?? – Lion
すべてのPDFを私のアプリケーションに添付しました。ユーザーには表示されません。だから、そのPDFをユーザのローカルフォルダにコピーしたいので、どのアプリでも簡単に使うことができます。 –
iPhoneにはローカルフォルダがありません。どこにPDFをコピーしますか?あなたはUIActivityViewControllerを介して共有を調べることができます。 –