2011-12-29 68 views
1

我用下面的代码保存照片从相机拍摄删除NSURL路径的内容

代码:

- (IBAction)saveImage:(id)sender { 
    UIImage *viewImage = imageView.image; // was taken from Camera 
    ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init]; 
    // Request to save the image to camera roll 
    [library writeImageToSavedPhotosAlbum:[viewImage CGImage] orientation:(ALAssetOrientation)[viewImage imageOrientation] completionBlock:^(NSURL *assetURL, NSError *error){ 
     if (error) { 
      NSLog(@"error"); 
     } else { 
      NSLog(@"url %@", assetURL); 
      self.imgUrl = assetURL; 
     } 
    }]; 
    [library release]; 
} 

这就是NSLog的

的日志
assets-library://asset/asset.JPG?id=2A72A3FF-1662-4979-8DD7-0F5721C49F81&ext=JPG 

现在,当IM如何去除图像?

我想:

NSFileManager *fileManager = [NSFileManager defaultManager]; 
[fileManager removeItemAtPath:[self.imgUrl absoluteString] error:NULL]; 

,但它没有工作 任何帮助将是巨大的

预先感谢您

回答

2

如果您不打算将图像永久保存到用户的照片库,为什么最初将图像保存在那里?

您应该将图像保存到应用程序的沙盒文件夹中,然后从那里删除它。

您不能删除从图片库

1

尝试使用NSURL路径。在删除文件路径之前,请检查文件是否存在于路径中。

NSFileManager *fileManager = [NSFileManager defaultManager]; 
[fileManager removeItemAtPath:[self.imgUrl path] error:NULL]; 
+0

图像也没有工作我尝试了 – 2011-12-29 10:23:28

+0

我相信imgUrl的是NSURL对象,如果是的话它应该工作。只是尝试打印它的网址你得到 – Splendid 2011-12-29 10:27:46

+0

也NSLog(@“%@”,[self.imgUrl路径]);其结果是:/asset.JPG – 2011-12-29 10:31:27