Einzelnen Beitrag anzeigen

Benutzerbild von Corpsman
Corpsman

Registriert seit: 8. Nov 2005
Ort: nähe Stuttgart
981 Beiträge
 
Delphi XE2 Professional
 
#4

Re: Anzahl von Bytes aus Datei ausschneiden/löschen

  Alt 10. Mär 2007, 07:37
So wie du das geschrieben hast implizierst du das dein Gesuchter Block nur 1 mal in der Datei ist.

in deiner Sample die du hochgeladen hast ist das aber Definitiv nicht so.

Daher wüdre ich das ein bischen anders machen.
Delphi-Quellcode:
const Praefix = '@@DOCUWARE_';
begin
..
Anfang := 0;
tmp := 0;
while (Anfang <buffer.size ) and (tmp < buffer.size- length(Praefix)) do begin
// Anfang:= pos('@@DOCUWARE_', buffer);
inc(tmp);
b := True;
for z := 1 to length(Praefix) do
if Buffer[tmp+z-1]<>Praefix[z] then begin
b := false;
break;
end;
if b then begin
// for Ende:= length(buffer) downto Anfang+ 10 do
for Ende := Anfang +Length(Praefix) to Length(buffer) do
        begin
          if (buffer[Ende]= '@') and (buffer[Ende- 1]= '@') then
            break;
        end;
// Dieser Abschnitt müste nun alle Teile irgendwann mal ablaufen.
      WVerarbeitung:= copy(buffer, Anfang, Ende- Anfang);
end;
end;
Sorry für den schlechten Stil ich hab leider net viel zeit.
Uwe
My Sitewww.Corpsman.de

My marble madness clone Balanced ( ca. 70,0 mb ) aktuell ver 2.01
  Mit Zitat antworten Zitat