Wenn deine Datei nur Zahlen (Bytes?) enthält, könntest du das aber auch effektiver binär lösen, statt mit Strings zu arbeiten (viel zu langsam). Also sprich statt 1, 4, 8, ... untereinander in eine Liste zu schreiben kannst du diese Zahlen auch in ein Array of Byte werfen und das in einem Rutsch per FileWrite in eine Datei schreiben. Auslesen kannst du den Spaß dann z.B. so:
Delphi-Quellcode:
type
PByte = ^Byte;
var
i, fH, fS: Integer;
fD: Pointer;
Data: PByte;
begin
fH := FileOpen (...);
if (fH = -1) then
Fehler;
// Dateigröße ermitteln
fS := FileSeek (fH, 0, 2);
if (fS = -1) then
Fehler;
FileSeek (fH, 0, 0);
// Speicher reservieren und Datei in einem Schlag auslesen
GetMem (fD, fS);
if (FileRead (fH, fD^, fS) <> fS) then
Fehler;
// Data auf ersten Wert im Puffer zeigen lassen
Data := fD;
for i := 0 to fS - 1 do
begin
showmessage (inttostr (Data^)); // Data enthält den aktuellen Wert
if ((i + 1) mod 16 = 0) then
...; // Du meintest was von 16 Zeilen = eine Zahl?
inc (Data); // Zeiger weiterschieben, um an den nächsten Wert zu kommen
end;
end;