ios - 如何在 Objective C 中打开本地保存的 PDF 文件

标签 ios objective-c pdf local-storage

我正在尝试将 PDF 文件保存到本地存储。

我以这种方式保存文件,在我看来一切都很好。

//Get path directory
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];

//Create PDF_Documents directory
documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"PDF_Documents"];
[[NSFileManager defaultManager] createDirectoryAtPath:documentsDirectory withIntermediateDirectories:YES attributes:nil error:nil];

filePath = [NSString stringWithFormat:@"%@/%@", documentsDirectory, tastingName];

[tastingNotesData writeToFile:filePath atomically:YES];

这样我尝试获取文件

tastingPath =/var/mobile/Containers/Data/Application/4255D8B0-33F5-47AA-ABFA-CCC3691DA033/Documents/PDF_Documents/39e0afcdb56240c2a65ab9e136377b32.pdf;

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:[self.productModel.tastingPath lastPathComponent]];

NSData *data2 = [[NSFileManager defaultManager] contentsAtPath:path];

NSLog(@"tasting notes %@", data2);

最后文件将显示在 UIWebView 中。

我做错了什么?

最佳答案

问题很简单。在尝试读取 PDF 文件时,您没有包含路径的 PDF_Documents 部分。或者您没有附加文件名。无法100%确定哪个部分是错误的。这取决于 [self.productModel.tastingPath lastPathComponent] 的值是什么。

关于ios - 如何在 Objective C 中打开本地保存的 PDF 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45696949/

相关文章:

objective-c - 跟踪 iOS 应用程序的事件

database - 使用 codeigniter 编辑现有 pdf 文件并通过电子邮件发送到此编辑 pdf 文件

java - 从java服务器获取pdf页面,并嵌入到现有的html中

ios - Facebook-由app_scoped_user_id打开个人资料

ios - 如何在 Swift 中获取 DatePicker 时间到 Calendar 组件并插入到 Label 组件

ios - 禁用连接警报 Multipeer Connectivity

objective-c - Objective C 数学公式失败

ios - 在 CGRectMake、Swift、UIkit 中使用变量

ios - 如何知道照片是黑色还是太暗?

objective-c - 如何找到 objective-c 中加载的pdf文件的总页数?