Swift   发布时间:2022-03-31  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了使用Swift删除iOS目录中的文件大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我在我的应用程序中下载了一些PDF文件,并希望在关闭应用程序时删除这些文件. 由于某种原因,它不起作用: 创建文件: let reference = "test.pdf" let RequestURL = "http://xx/_PROJEKTE/xx\(self.reference)" let ChartURL = NSURL(string: RequestURL) //downloa
我在我的应用程序中下载了一些PDF文件,并希望在关闭应用程序时删除这些文件.

由于某种原因,它不起作用:

创建文件

let reference = "test.pdf"    
let RequestURL = "http://xx/_PROJEKTE/xx\(self.reference)"
let ChartURL = NSURL(string: RequestURL)

//download file
let documentsUrl =  NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory,inDomains: .UserDomainMask).first! as NSURL
let destinationUrl = documentsUrl.URLByAppendingPathComponent(ChartURL!.lastPathComponent!)
if NSFileManager().fileExistsAtPath(destinationUrl.path!) {
    print("The file already exists at path")
} else {
    //  if the file doesn't exist
    //  just download the data from your url
    if let ChartDataFromUrl = NSData(contentsOfURL: ChartURL!){
        // after downloading your data you need to save it to your destination url
        if ChartDataFromUrl.writeToURL(destinationUrl,atomically: true) {
            print("file saved")
            print(destinationUrl)
        } else {
            print("error saving file")
        }
    }
}

然后我想调用test()函数删除项目,如下所示:

func test(){

    let fileManager = NSFileManager.defaultManager()
    let documentsUrl =  NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory,inDomains: .UserDomainMask).first! as NSURL

    do {
        let filePaths = try fileManager.contentsOfDirectoryAtPath("\(documentsUrl)")
        for filePath in filePaths {
            try fileManager.removeItemAtPath(NstemporaryDirectory() + filePath)
        }
    } catch {
        print("Could not clear temp folder: \(error)")
    }
}
我相信你的问题就在这条线上:
let filePaths = try fileManager.contentsOfDirectoryAtPath("\(documentsUrl)")

您正在使用contentsOfDirectoryAtPath()和NSURL.您可以选择路径字符串或URL,而不是尝试将它们混合使用.要预先清空您可能的下一个问题,首选网址.尝试使用contentsOfDirectoryAtURL()和removeItemAtURL().

解决上述问题后,您应该注意另一个奇怪的事情:为什么在尝试删除时使用NstemporaryDirectory()作为文件路径?您正在阅读文档目录并应该使用它.

大佬总结

以上是大佬教程为你收集整理的使用Swift删除iOS目录中的文件全部内容,希望文章能够帮你解决使用Swift删除iOS目录中的文件所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: