Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.02.12;
Скачать: [xml.tar.bz2];

Вниз

Побайтовое сравнение файлов   Найти похожие ветки 

 
XeON ©   (2006-01-22 15:30) [0]

Доброго всем времени суток. Народ, подскажите пожалуйста, как мне побайтово сравнить 2 файла? А затем результат сравнения (номер байта и сам байт) куда-нибудь записать (например в тип Record)? Пробовал через BlockRead - не получается...


 
Lamer@fools.ua ©   (2006-01-22 15:36) [1]

>Пробовал через BlockRead - не получается...

И как именно не получается?


 
Desdechado ©   (2006-01-22 15:41) [2]

fc файл1 файл2 /b >результат


 
Zeqfreed ©   (2006-01-22 16:51) [3]

XeON ©   (22.01.06 15:30)

function AreFilesEqual(const fn1, fn2 : String) : Boolean;
var
 f1, f2 : Integer;
 fs1, fs2 : Cardinal;
 r1, r2, toread, read1, read2 : Integer;
 buf1, buf2 : array[0..10239] of Byte;
begin
 Result := false;

 f1 := FileOpen(fn1, fmShareDenyNone);
 f2 := FileOpen(fn2, fmShareDenyNone);
 fs1 := GetFileSize(f1, nil);
 fs2 := GetFileSize(f2, nil);

 read1 := 0;
 read2 := 0;
 if (fs1 = fs2) then begin
  repeat
   toread := Min(fs1 - read1, SizeOf(buf1));

   r1 := FileRead(f1, buf1, toread);
   r2 := FileRead(f2, buf2, toread);

   read1 := read1 + r1;
   read2 := read2 + r1;

   if (r1 <> toread) or (r2 <> toread) or (not CompareMem(@buf1, @buf2, toread)) then Exit;
  until ((read1 = fs1) and (read2 = fs2));

  Result := true;
 end;

 FileClose(f1);
 FileClose(f2);
end;


Вроде все правильно написал ;)


 
Fay ©   (2006-01-23 09:19) [4]

2 Zeqfreed ©   (22.01.06 16:51) [3]
(r1 <> toread) or (r2 <> toread) не говорит о различии файлов.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.02.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.042 c
1-1136897933
m_mike
2006-01-10 15:58
2006.02.12
Программа мешает завершению работы windows


2-1138089819
Der Nechk@ssoff
2006-01-24 11:03
2006.02.12
Как зделать маинменюшку


1-1137410603
Still Swamp
2006-01-16 14:23
2006.02.12
Как отобразить в окошке некий текст HTML


15-1137871164
parovoZZ
2006-01-21 22:19
2006.02.12
IntraWeb


1-1136962161
alless
2006-01-11 09:49
2006.02.12
Как узнать что файл записался до конца в дир.?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский