组文件的哈希和
本文关键字:哈希 文件 | 更新日期: 2023-09-27 18:15:21
我正在编写一个控制台程序,它应该显示重复文件组。我有一个方法返回文件的完整路径集合:
public IEnumerable<String> GetFullPath(String fullPath)
{
/*
realisation
*/
yield return new FileInfo(file).FullName;
}
我也有一个方法返回文件的哈希和:
public String GetMd5HashOfFile(String file)
一切正常;我可以显示文件的完整路径,也可以显示文件哈希值,但如何显示具有相同哈希值的文件的完整路径组呢?
使用GroupBy
var allFiles = getAllFiles(fullPath); // or whatever
return allFiles.GroupBy(c => GetMd5HashOfFile(c));
你可以随意使用,例如:
foreach (var v in grouped)
{
Console.WriteLine("Hash: {0}", v.Key);
foreach (var f in v)
{
Console.WriteLine("'t{0}", f);
}
}