Die Datei ist eine einfache per CR+LF pro Zeile getrennte Auslistung von Nummern. Ich habe probehalber noch die Funktion FReadline und FLoadText verwendet.
Das Ergebnis der unten stehenden Funktion ist bei den Log2File-Einträgen:
1. NULL
2. NULL
3. Inhalt der Datei
Code: Alles auswählen
PROCEDURE File2Array(aArray is array of strings, cDatei is string)
resopen is int
resopen = fOpen(cDatei,foReadWrite)
IF resopen=-1 THEN
RESULT aArray
END
fSeek(resopen,1,fpBeginning)
IF resopen <> -1 THEN
ngelesen is int
ngelesen = 1
cPuffer is string
cPuffer = " "
cSatz is string
cSatz = ""
WHILE ngelesen=1
cPuffer = fRead(resopen, 1)
ngelesen = Length(cPuffer)
Log2File(cPuffer,cOutput)
IF cPuffer=CR THEN
ArrayAdd(aArray,cSatz)
cSatz=""
ELSE
IF cPuffer<>Charact(10) THEN
cSatz = cSatz+cPuffer
END
END
IF cPuffer=EOT THEN
ArrayAdd(aArray,cSatz)
//fClose(resopen)
//result aArray
END
END
END
fSeek(resopen,1,fpBeginning)
cPuffer = fReadLine(resopen)
Log2File(cPuffer,cOutput)
fClose(resopen)
cPuffer = fLoadText(cDatei)
Log2File(cPuffer,cOutput)
RESULT aArray