2012-09-06 21 views
1

我正在处理简单的图像处理程序。我目前在阶段时,我一定要保存图像: 我在做类似的东西在那一刻: external source检查相册中是否存在文件

但是有一个问题。每次我想保存图片时,我会覆盖之前的图片。如何检查相册“保存的图片”中是否存在文件?

回答

2

假设你知道文件名,你可以使用这样的事情:

using (var ml = new MediaLibrary()) 
{ 
    using (var pics = ml.SavedPictures) 
    { 
     using (var img = pics.LastOrDefault(pic => pic.Name == FILENAME)) 
     { 
      if (img == null) 
      { 
       // file doesn't exist 
      } 
      else 
      { 
       // file does exist 
      } 
     } 
    } 
} 
+0

为什么您使用LastOrDefault()而不是FirstOrDefault?这种方式迭代完整的集合,并且你想要的只是检查它是否存在......即便如此,鉴于我们只是想要一个布尔值,我个人只会使用Any()来代替:) –

+1

非常感谢@PedroLamas我将使用组合版本。 – ewooycom

0

试试这个。在图片库中查找文件

using (var library = new MediaLibrary()) 
{ 
    var appFolder = library.RootPictureAlbum.Albums.FirstOrDefault(al => al.Name == "folderName"); 
    if (appFolder != null && appFolder.Pictures.Count > 0) 
    { 
     var file = appFolder.Pictures.FirstOrDefault(pc => pc.Name == ("fileName")); 
     if (file == null) 
     { 
      // file doesn't exist 
     } 
     else 
     { 
      // file does exist 
     } 
    } 
}