我在相机应用程序中工作,我可以录制视频并将其保存在以下目录中:
file:///var/mobile/Applications/2683FFEC-63AB-4004-831B-DE38053CA472/Library/Caches/0C2E7E7C-5D78-4989-9C8E-259B3595BAC8-6498-0000042F24AB2D98.mov
当我进入相机应用程序时,我可以看到视频,但我想在退出应用程序时删除此视频,我到目前为止这样做了
NSFileManager *fileManager = [[NSFileManager defaultManager];
[fileManager removeItemAtPath:THEABOVEURL error:&error];
但没有任何反应,并说cocoa error 4.The operation couldn’t be completed. No such file or directory
但我确信文件存在,因为我可以使用上面提到的确切网址播放视频,我现在该怎么办?
答案 0 :(得分:0)
可可错误4意味着
NSFileNoSuchFileError = 4, // Attempt to do a file system operation on a non-existent file
所以看起来该文件不存在。
您可能希望在删除文件时确定文件是否存在,可能是您使用的网址有问题?
- (BOOL)removeItemAtPath:(NSString *)path error:(NSError **)error
它需要一个字符串作为第一个参数,我在你的代码中看到
[vedioPaths objectAtIndex:THEABOVEURL]
看起来THEABOVEURL应该是一个索引,而vedioPaths包含表示文件路径的所有NSString,添加一些NSLog以查看这些变量是否包含删除文件的正确信息。
答案 1 :(得分:0)
好的,我解决了问题,我试图删除
所在的网址- (BOOL)removeItemAtPath:(NSString *)path error:(NSError **)error
方法希望NSUrl作为参数我将此字符串转换为url并使用此方法
NSURL *urlfromString= [NSURL URLWithString:ABOVEURL];
[fileManager removeItemAtURL:urlfromString error:&error];
这解决了我的问题