Teile einer Textdatei löschen
Hallo Leute ! :hi:
Mein erster Tag hier und gleich die erste Frage an die Profis: Ich habe mehrere Textdateien mit je über 100 Zeilen. Am Anfang und am Ende von jeder Textdatei ist Chaos. Irgendwo in der Mitte ist ein Bereich, was nützlich ist. Dieses nützliche Teil beginnt mit "Apfel" und endet mit "Birne". Die Positionen von "Apfel" und "Birne" sind in jeder Datei unterschiedlich. Wie lösche ich das Chaos, so dass die Dateien immer mit "Apfel" beginnen und mit "Birne" enden ? Werde aus der Delphi-Hilfe nicht schlau, könnt Ihr mir helfen ? Bitte denkt dran, bin kein Profi. VIELEN DANK IM VORAUS Mikael |
Re: Teile einer Textdatei löschen
wenn die datei nicht all zu groß ist kommst du am besten du liest sie komplett in einen String ein. dann suchst du mit Pos nach Apfel. Anschließend suchst du mit Pos nach birne. und dann den teil dazwischen als datei speichern.
Ein Beispiel:
Delphi-Quellcode:
procedure CutFilePart(AFilename: String);
var LStream: TStream; LStr: String; LPos1, LPos2: Integer; begin if FileExists(AFilename) then begin LStream := TFileStream.Create(AFilename, fmOpenRead); setlength(LStr, LStream.Size); LStream.Read(LStr[1], LStream.Size); LStream.Free; LPos1 := pos('apfel', LStr); if LPos1 > 0 then begin LPos1 := LPos1 + length(apfel); LPos2 := pos('biren', LStr); if (LPos2 > 0) and (LPos2 > LPos1) then begin LStream := TFileStream.Create(AFilename, fmCreate); LStream.Write(LStr[LPos1], LPos2 - LPos1); LStream.Free; end; end; end; end; |
Re: Teile einer Textdatei löschen
SUPER ! :hello: bin begeistert !
HERZLICHEN DANK :-))) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz