字典C#

时间:2015-11-15 22:33:53

标签: c# list sorting dictionary

我有一个字典,其中键是文件大小的值(以千字节为单位),以及与此大小相匹配的文件的值列表

Dictionary<long, List<FileInfo>> myDictionary=new Dictionary<long, List<FileInfo>>();

我需要字典中的每个List来检查重合是否不仅是文件的大小而且文件的内容(大小是我们的字典的键),如果它不匹配则将它们写入新的列表对于新密钥,或在同一个字典中要么是新的。 算法检查文件的内容:

public bool Comparison(FileInfo f1, FileInfo f2)
    {
        int file1byte;
        int file2byte;
        BufferedStream fs1;
        BufferedStream fs2;

        if (f1 == f2)
        {
            return true;
        }
        fs1 = new BufferedStream(new FileStream(f1.FullName, FileMode.Open));
        fs2 = new BufferedStream(new FileStream(f2.FullName, FileMode.Open));

        if (fs1.Length != fs2.Length)
        {
            fs1.Close();
            fs2.Close();
            return false;
        }

        do
        {
            file1byte = fs1.ReadByte();
            file2byte = fs2.ReadByte();
        }
        while ((file1byte == file2byte) && (file1byte != -1));

        fs1.Close();
        fs2.Close();
        return ((file1byte - file2byte) == 0);
    }

0 个答案:

没有答案