如何从文档目录加载PDF?

时间:2011-10-31 11:14:01

标签: iphone objective-c ios ios4

我可以使用此代码从Resources文件夹加载pdf文件列表(所有pdf文件)。

 NSArray *pdfs = [[NSBundle mainBundle] pathsForResourcesOfType:@"pdf" inDirectory:nil];

但我找不到从Documents Directory加载pdf文件列表的方法。以下代码行可以一次只加载一个 pdf。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *file = [documentsDirectory stringByAppendingPathComponent:@"test.pdf"];
NSURL *urlPdf = [NSURL fileURLWithPath: file];

如何从文档目录中加载所有pdf文件

你能给我一个代码示例吗?

3 个答案:

答案 0 :(得分:6)

我能够使用以下代码解决我的问题:)

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSArray *pdfs = [[NSBundle bundleWithPath:[paths objectAtIndex:0]] pathsForResourcesOfType:@"pdf" inDirectory:nil];

答案 1 :(得分:0)

使用NSFileManager's contentsOfDirectoryAtPath并手动过滤结果以获取pdf文件。

This answer可能会有帮助。

答案 2 :(得分:0)

你可以这样做

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

NSFileManager *fileManager = [NSFileManager defaultManager];
NSError *error = nil;
NSArray *filesAtPath = [fileManager contentsOfDirectoryAtPath:documentsDirectory error:error];

for (NSString *path in filesAtPath) 
{
    if ([path rangeOfString:@".pdf"].length > 0)
    {
        //Do whatever you want with the pdf file
    }
}

我希望它有所帮助,欢呼

相关问题