Forum: Object-Pascal / Delphi-Language
by af99,
17. Jul 2015
ups, da hast Du vollkommen Recht. Ich muss also oben abschneiden.
Forum: Object-Pascal / Delphi-Language
by af99,
17. Jul 2015
hmmm, ja ok. Damit bekomme ich die Position der CRLF. Ich denke die hatte ich vorher auch schon. Wie bekomme ich aber nun die Länge in Bytes des Buffers von Anfang bis zu CRLF?
Forum: Object-Pascal / Delphi-Language
by af99,
17. Jul 2015
ich hab nochmal nachgeschaut
FileStream.Size gibt die Größe in Bytes an
SizeOf() gibt auch die Größe in Bytes an
Wenn ich also das mache
FileStream.Size := 999900 + SizeOf(copy(buffer, 1, pos(char(13) , buffer)))
dann sollte ich doch am Ende der Zeile landen.
Ist aber leider nicht so?!
Forum: Object-Pascal / Delphi-Language
by af99,
17. Jul 2015
Irgendwie bekomme ich es nicht hin genau bis zum CR LF abzuschneiden. So habe ich es versucht
var
FileStream : TFileStream;
Reader: TStreamReader;
buffer: string;
posCRLF: Integer;
begin
try
Forum: Object-Pascal / Delphi-Language
by af99,
16. Jul 2015
ok, soweit bin ich nun
const
MaxLen = 1024;
var
FileStream : TFileStream;
Writer: TStreamWriter;
Reader: TStreamReader;
buffer: string;
posCRLF: Integer;
Forum: Object-Pascal / Delphi-Language
by af99,
16. Jul 2015
@Klaus01: geht nicht da ich immer die alten Einträge abschneiden möchte.
@BUG: wie finde ich denn die Stelle bei genau 100MB?
Forum: Object-Pascal / Delphi-Language
by af99,
16. Jul 2015
Hallo Zusammen,
ich möchte eine Textdatei auf 100MB kürzen.
Folgendes habe ich gemacht
var
FileStream : TFileStream;
begin
FileStream := TFileStream.Create(ExtractFilePath(Application.ExeName) + 'log.txt', fmopenreadwrite);