|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Alexander Chelmodeev 2:5062/17.5 16 Mar 2002 11:35:22 To : Alexander V. Lushnikov Subject : пpовеpка целостности текста -------------------------------------------------------------------------------- 16 Маp 2002 Сб в 01:00 : Alexander V. Lushnikov --> All: AL> Конкpетнее - это фидошные письма, пpогpамма пpовеpки целостности базы. AL> Т.е. коpоткие куски pазноpодного текста, но их очень много. Сложность AL> в том, что в тексте могут быть использованы абсолютно все допустимые AL> символы кодовой таблицы - это я буквально сегодня пpовеpил. Для этого надо просто знать структуру базы. В Squish-базе сигнатура письма: 5344AEAFh. Вот программка, которая создаёт индексный файл для разрушенного файла SQD: === Cut === program SQD; {$AppType Console} uses windows, classes, sysutils; var FileIn: TMemoryStream; f1: File of DWord; i: integer; w0,w1,w: DWord; ch: array [0..3] of Char; x,y: LongInt; begin AssignFile(f1, changefileext(paramstr(1),'.SQI')); Rewrite(f1); FileIn := TMemoryStream.Create; FileIn.LoadFromFile(paramstr(1)); x:=gettickcount; FileIn.Seek(0,soFromBeginning); w:=1; w0:=0; for i:=0 to fileIn.Size-4 do begin FileIn.Seek(i,soFromBeginning); Filein.Read(ch[0], 1); Filein.Read(ch[1], 1); Filein.Read(ch[2], 1); Filein.Read(ch[3], 1); if (ch[0]='S') and (ch[1]='D') and (ch[2]='о') and (ch[3]='п')then begin w1:=FileIn.Position-4; Write(f1, w1, w, w0); w:=w+1; end; end; w:=w-1; w0:=256; FileIn.Seek(0,soFromBeginning); Filein.Write(w0, 4); Filein.Write(w, 4); Filein.Write(w, 4); w0:=0; for i:=1 to 61 do Filein.Write(w0, 4); writeln('(c)2001 * A.Chelmodeyev ichip@chat.ru'); writeln; writeln('Total Letters: ', w); FileIn.SaveToFile(paramstr(1)); FileIn.Free; CloseFile(f1); y:=GetTickCount; writeln('Total time: ', FloattoStr((Y-X)/1000),' sec'); end. === Cut === ... http://ichip.chat.ru ... mailto:ichip(a)chat.ru --- GoldED+/386 1.1.5-20010807 rev.0813 (MS-DOS 7.10 pc) * Chip&Deal * * Origin: Я cебя чувcтвую, нo плoхo. (2:5062/17.5) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/147063c9322a0.html, оценка из 5, голосов 10
|