Hallo Björn,
herzlich willkommen in der Delphi-PRAXiS.
In deinem Fall bringt vielleicht der Rückgriff auf die guten alten Textdateien den schnellen Erfolg. Mein Beispiel liest maximal 6 Zahlen pro Zeile ein und gibt sie zeilenweise wieder aus, wobei die interne Repräsentation (Punkt als Dezimaltrennzeichen) beibehalten wird. Die wenigen Zeilen solltest du vielleicht anhand der Online Hilfe von Delphi analysieren:
Delphi-Quellcode:
program bs80;
{$APPTYPE CONSOLE}
uses
SysUtils;
const
MAXNUM_PER_ROW = 6;
var
da:
array of Double;
i: Integer;
s:
String;
begin
AssignFile(input, ParamStr(1));
Reset(input);
AssignFile(output, ParamStr(2));
Rewrite(output);
SetLength(da, MAXNUM_PER_ROW);
while not Eof
do
begin
i := Low(da);
// spaltenweise einlesen
while not Eoln
and (i < Length(da))
do
begin
Read(da[i]);
Inc(i);
end;
ReadLn;
// zeilenweise ausgeben
while i > Low(da)
do
begin
Dec(i);
Str(da[i]:0:2, s);
WriteLn(s);
end;
end;
CloseFile(output);
CloseFile(input);
end.
Der Aufruf erfolgt so:
Code:
bs80 eingabedateiname ausgabedateiname
Lässt du einen oder beide Dateinamen weg, dann kannst du statt dessen die Eingabe-Ausgabe-Umleitung verwenden.
Freundliche Grüße vom marabu