Wie kann ich externe Dateien in QBasic korrekt öffnen und lesen?
- Dateien in QBasic öffnen
- Lesen von Daten aus der Datei
- Erkennung des Dateiende (EOF)
- Datei schließen
- Beispiel für ein vollständiges Programm
- Zusammenfassung
Das Öffnen und Lesen externer Dateien in QBasic ist eine grundlegende Funktion, um Daten aus Text- oder Binärdateien zu verarbeiten. QBasic bietet dafür spezielle Befehle, die es ermöglichen, Dateien zu öffnen, Daten zeilenweise oder zeichenweise zu lesen und anschließend wieder zu schließen. Im Folgenden wird erläutert, wie man eine Datei korrekt öffnet und deren Inhalt in einem QBasic-Programm einliest.
Dateien in QBasic öffnen
Um eine Datei in QBasic zu öffnen, verwendet man den OPEN-Befehl in Kombination mit einem Dateinamen und einem Zugriffsmodus. Die gängigsten Modi sind INPUT für das Lesen von Dateien und OUTPUT oder APPEND für das Schreiben. Beim Lesen ist INPUT am häufigsten. Dabei gibt man der Datei eine logische Dateinummer, üblicherweise eine Zahl zwischen 1 und 255, über die man dann im Programm auf die Datei zugreift.
Beispiel zum Öffnen einer Textdatei zum Lesen: OPEN "dateiname.txt" FOR INPUT AS #1
Lesen von Daten aus der Datei
Nach dem Öffnen kann man den Inhalt der Datei mit den Befehlen INPUT #, LINE INPUT # oder GET # auslesen, je nachdem wie die Datei strukturiert ist und wie man die Daten einlesen möchte. Für Textdateien, insbesondere wenn man zeilenweise lesen möchte, ist LINE INPUT # sehr praktisch, da es eine komplette Zeile als String einliest, inklusive aller darin enthaltenen Zeichen bis zu einem Zeilenumbruch.
Ein einfaches Beispiel, um Zeile für Zeile zu lesen: Zunächst wird eine Variable definiert, die eine Zeile speichern kann (typischerweise ein String). Dann liest man in einer Schleife, bis das Dateiende erreicht ist, und verarbeitet dabei jede Zeile.
Erkennung des Dateiende (EOF)
Zur Kontrolle, wann das Ende der Datei erreicht ist, verwendet man in QBasic den Befehl EOF(#Dateinummer), der einen Wahrheitswert zurückgibt, der anzeigt, ob das Dateiende erreicht wurde. Dadurch kann man eine Schleife bauen, die so lange liest, bis das Ende der Datei erreicht ist.
Datei schließen
Wichtig ist auch, nach dem Lesen die Datei mit CLOSE #Dateinummer zu schließen, um Ressourcen freizugeben und sicherzustellen, dass keine Daten verloren gehen oder gesperrt bleiben.
Beispiel für ein vollständiges Programm
Unten findet sich ein Beispielprogramm, das eine Textdatei namens "daten.txt" öffnet, alle Zeilen ausliest und jeweils auf dem Bildschirm ausgibt:
OPEN "daten.txt" FOR INPUT AS #1 DO WHILE NOT EOF(1) LINE INPUT #1, zeile$ PRINT zeile$ LOOP CLOSE #1In diesem Beispiel verwendet das Programm die Dateinummer 1 zum Öffnen der Datei. Innerhalb der DO WHILE-Schleife wird mit LINE INPUT #1, zeile$ jeweils eine Zeile eingelesen und anschließend mit PRINT ausgegeben. Die Schleife endet, wenn mit EOF(1) festgestellt wird, dass keine weiteren Daten mehr vorhanden sind.
Zusammenfassung
Das korrekte Öffnen und Lesen externer Dateien in QBasic erfordert die Verwendung von OPEN ... FOR INPUT AS #, eine Schleife, die mit EOF gesteuert wird, um Daten zeilenweise oder zeichenweise zu lesen, sowie das abschließende Schließen der Datei mit CLOSE. Dies ermöglicht eine einfache und effektive Verarbeitung von externen Textdaten im QBasic-Programm.
