有没有直接比较2个文件一样的函数?
还是需要比较2个文件的修改日期和大小?
有不打开文件就能返回文件大小的函数么?请高手们多多指教.

解决方案 »

  1.   

    一般情况需要打开文件才能得到文件大小。
    GetFileSize(Handle : THandle;xxxx);楼上的作MD5似乎有些不妥当,效率低啊。MD5作了和好多演算。老实点对比字节吧
      

  2.   

    function CompareFile(const FileName1, FileName2: string): Boolean;
    var
      Stream1, Stream2: TMemoryStream;
    begin
      Stream1 := TMemoryStream.Create;
      Stream1.LoadFromFile(FileName1);
      Stream2 := TMemoryStream.Create;
      Stream2.LoadFromFile(FileName2);
      Result := (Stream1.Size = Stream2.Size);
      Result := Result and CompareMem(Stream1.Memory, Stream2.Memory, Stream1.Size);
      Stream1.Free;
      Stream2.Free;
    end;