Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 文件的组哈希和_C#_Linq - Fatal编程技术网

C# 文件的组哈希和

C# 文件的组哈希和,c#,linq,C#,Linq,我正在编写一个控制台程序,它应该显示多组重复的文件。 我有一个方法可以返回文件的完整路径集合: public IEnumerable<String> GetFullPath(String fullPath) { /* realisation */ yield return new FileInfo(file).FullName; } 一切正常;我可以显示文件的完整路径,也可以显示文件哈希,但如何显示具有相同哈希的文件的完整路径组?分组应以空行分隔。

我正在编写一个控制台程序,它应该显示多组重复的文件。 我有一个方法可以返回文件的完整路径集合:

public IEnumerable<String> GetFullPath(String fullPath)
{
    /*
     realisation
    */
    yield return new FileInfo(file).FullName;
}
一切正常;我可以显示文件的完整路径,也可以显示文件哈希,但如何显示具有相同哈希的文件的完整路径组?分组应以空行分隔。

使用

然后,您可以根据需要使用它,例如:

foreach (var v in grouped)
{
    Console.WriteLine("Hash: {0}", v.Key);

    foreach (var f in v)
    {
        Console.WriteLine("\t{0}", f);
    }
}

到目前为止你试着做什么?您是否查看过任何LINQ操作符,看看其中是否有一个可以帮助您对项目进行分组?如果你花时间去寻找一个,我想这是一个很好的调查选择。谢谢!!!我知道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);
    }
}