2015-11-30 21 views
1

我有一个项目正在创建并保存本地PDF文件到DocumentDirectoy。我已阅读here以了解如何查看DocumentDirectory并为其筛选PDF文件。我希望DocumentDirectory文件可以在UITableView中查看。我知道我必须有一个array。我看到here这样做,但无法弄清楚如何将DocumentDirectory放入Swift 2.0中的数组中以显示在我的UITableView中。我的PDF文件正在保存并可在我的UIWebView中查看。用于Xcode 7和Swift 2.0的UITableView Array中的DocumentsDirectory

我看我的DocumentDirectory PDF的代码是:

func itemsInDirectory() { 

    // We need just to get the documents folder url 
    let documentsUrl = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).first! 

    // now lets get the directory contents (including folders) 
    do { 
     let directoryContents = try NSFileManager.defaultManager().contentsOfDirectoryAtURL(documentsUrl, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions()) 
     print("Items: \(directoryContents)") 

    } catch let error as NSError { 
     print(error.localizedDescription) 
    } 

    // if you want to filter the directory contents you can do like this: 
    do { 
     let directoryUrls = try NSFileManager.defaultManager().contentsOfDirectoryAtURL(documentsUrl, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions()) 
     print(directoryUrls) 
     let PDFFiles = directoryUrls.filter(){ $0.pathExtension == "pdf" }.map{ $0.lastPathComponent } 
     print("PDF FILES:\n" + PDFFiles.description) 
    } catch let error as NSError { 
     print(error.localizedDescription) 
    } 

} 

它打印出他们当我运行它。有人可以帮助我将DocumentDirectory转换为数组以查看我的UITableView?谢谢。

回答

0

我想通了。在ViewDidLoad()节我的主菜单View Controller我说:

// Get the documents folder url 
    let documentsUrl = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).first! 

    // Filter for PDF only 
    do { 
     let directoryUrls = try NSFileManager.defaultManager().contentsOfDirectoryAtURL(documentsUrl, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions()) 
     let PDFFiles = directoryUrls.filter(){ $0.pathExtension == "pdf" }.map{ $0.lastPathComponent } 

     // Set TableView array for saved files to DocumentDirectory PDFs 
     savedPDFFiles = PDFFiles 
     print(savedPDFFiles) 

    } catch let error as NSError { 
     print(error.localizedDescription) 
    } 

在我的其他Table View Controller,我设置savedPDFFilesGlobal Variable。当加载我的Table View Controller时,表格按名称显示我的DocumentDirectory文件。

相关问题