BASIC nach Forth - 17. Oktober 2006


BASIC nach Forth - 17. Oktober 2006

von cas » Mi 18. Okt 2006, 06:25
Arbeiten mit Dateien. Um in BASIC Dateien zu lesen oder schreiben, benutzen wir den Befehl OPEN. Beispiel, Oeffnen einer Datei zum Lesen und Einlesen des ersten Satzes:

Code: Alles auswählen
DIM A$(100)
OPEN #1,4,0,"D:DATEI.TXT"
INPUT #1,A$
close #1


In BASIC geben wir mit dem zweiten Wert im OPEN Befehl an, ob die Datei zum Lesen (4) oder Schreiben (8) oder zum Lesen/Schreiben (12) geoeffnet wird. In Forth haben wir hierzu extra Woerter:

R/O = Read Only
W/O = Write Only
R/W = Read Write

Code: Alles auswählen
VARIABLE filechannel
CREATE BUFFER 200 ALLOT

S" D:DATEI.TXT" R/O OPEN-FILE 
   ABORT" Datei konnte nicht geoeffent werden"
filechannel !
BUFFER filechannel @ READ-LINE
  ABORT" Datei konnte nicht gelesen werden"
filechannel @ CLOSE-FILE
  ABORT" Datei konnte nicht geschlossen werden"


Bei OPEN-FILE koennen wir nicht angeben, welcher Dateikanal benutzt wird. Forth sucht den naechst freien. Diesen speichern wir in der Variable "filechannel".

FILE-OPEN liefert ein Flag zurueck, welches angibt ob die DAtei geoeffnet werden konnte. ABORT" fragt ein Flag ab und wenn ein Fehler aufgetreten ist, wird der Text hinter ABORT" ausgegeben.

von CharlieChaplin » Do 26. Okt 2006, 12:53
Hallo Carsten,
gibt es diese kleinen Basic-to-Forth Demonstrationen auch als Files für den XL/XE zum Download ? Dann könnte ich die Sachen nämlich gleich alle auf der Volks-Forth Diskette speichern... Gruß, Andreas Magenheimer.

Ja haben wollen

von Wolfgang » Do 26. Okt 2006, 18:06
Wäre nicht schlecht, wenn die Files auf dem kommenden Magazin verröffentlicht werden könnten!
Also, lieber Carsten, Du läßt mich doch nicht hängen oder?
Wolfgang