我有一个应用程序,允许用户录制多个视频,然后发布它们以稍后从数据库中查看。他们发布视频后,我希望应用程序从文档目录中删除视频以节省手机存储空间。我正在尝试此操作,但是当我检查手机的存储空间时,没有更新。下面是我在做什么试图从文档目录中删除文件
这是我写的视频:
func videoFileLocation() -> String {
let uniqueID = NSUUID().uuidString
let documentsPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as NSString
let outputPath = "\(documentsPath)/\(uniqueID).mov"
return outputPath
}
这是我如何删除它们:
func clearDirectory() {
do {
data = try context.fetch(VideoPath.fetchRequest())
for each in data {
let documentsPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0]
let path = "\(documentsPath)/\(each.fileLocations!)"
let url = URL(fileURLWithPath: path)
do {
try FileManager.default.removeItem(at: url)
print("Successfully Cleared")
} catch {
print("There was a problem removing the file")
}
}
的成功清除方法被打印出来,但我看到我的手机存储没有变化。我究竟做错了什么?
each.fileLocations的值是什么?我敢打赌这是一个完整的路径,而不仅仅是一个文件名。 – rmaddy