LINQ重写博客垃圾图片回收算法
导读:收集整理的这篇文章主要介绍了LINQ重写博客垃圾图片回收算法,觉得挺不错的,现在分享给大家,也给大家做个参考。 思路很简单,从所有blog Model中解析出所有文章使用的图片文件名,排...
收集整理的这篇文章主要介绍了LINQ重写博客垃圾图片回收算法,觉得挺不错的,现在分享给大家,也给大家做个参考。 思路很简单,从所有blog Model中解析出所有文章使用的图片文件名,排除站外引用,放入一个Liststring>
usedPicList。再遍历图片上传文件夹,把所有图片文件的结果加入Fileinfo[] fiAllPicList。然后比较usedPicList和fiAllPicList,找出所有fiAllPicList中有,而usedPicList中木有的图片,就是未被任何文章引用的垃圾图片了。 原先这个比较算法是用传统方法写的,很蛋疼,用了两重循环,一个标志位才解决问题:
复制代码 代码如下:
ListFileInfo> garbagePicList = new ListFileInfo> ();
for (int k = 0; k fiAllPicList.Length; k++)
{
bool found = false;
for (int l = 0; l usedPicList.Count; l++)
{
if (fiAllPicList[k].Name == usedPicList[l].ToString())
{
found = true;
}
}
if (!found)
{
garbagePicList.Add(fiAllPicList[k]);
}
}
今天用LINQ重写了一下:
复制代码 代码如下:
ListFileInfo> garbagePicList = new ListFileInfo> ();
VAR query = From pic in fiAllPicList
where !usedPicList.Contains(pic.Name)
select pic;
garbagePicList = query.ToList();
清晰明了
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: LINQ重写博客垃圾图片回收算法
本文地址: https://pptw.com/jishu/594981.html