SelfProfan²:Dateien |
DateienDa wir nun ziemlich viel mit Eingabe und Ausgabe gemacht haben (Print,Input,If...) wollen wirnun zu den Dateien kommen. Diese können gelesen oder neu erstellt werden. Weiterhin ist es möglich einen Text an eine bestehende Datei anzuhängen. Ein kleines Beispiel für einen minimalen Zugriff auf eine Datei. Dies ist nur ein Ausschnitt aus einen Programm , nicht das ganze: ' Die Variable Punktzahl$ ist schon vorhanden! Assign #1,"datei.txt" Rewrite #1 print #1,Punktzahl$ close #1 Wer Englisch kann , der hat hiermit wahrscheinlich keine Probleme. Erklärung: Es wird eine Datei geöffnet , "datei.txt". Diese wird dann komplett überschrieben. Es gibt außer Rewrite noch 2 andere Möglichkeiten. Nun wird nicht auf den Bildschirm geschrieben , sondern in die Datei. Print kann dabei wie gewohnt verwendet werden. Danach wird die Datei wieder geschlossen. Änderungen werden erst übernommen , sobald die Datei geschlossen ist. Beim lesen muss man nicht warten. Nun genaueres zu Assign und Rewrite: Assign #1,"datei.txt" Die Datei wird mit Kanal 1 geöffnet und die Datei heißt "datei.txt". Die Anführungszeichen müssen dabeisein. Rewrite ist Englisch (wie oben gesagt) und bedeutet "Überschreiben". Es gibt noch Reset , das bedeutet lesen und Append , dass anhängen bedeutet. Beispiel: Declare zumschreiben$,zumlesen$,zumanhängen$ zumschreiben$="Etwas zum schreiben" zumlesen$="Etwas zum lesen" zumanhängen$="Etwas zum anhängen" Assign #1,"datei1.txt" Assign #2,"name.dat" Assign #3,"vorhanden.ode" Rewrite #1 Reset #2 Append #3 print #1,zumschreiben$ print #1,"Das war was geschriebenes!" Input #2,zumlesen$ print zumlesen$ print #3,zumanhängen$ close #1 close #2 close #3 Hier sind nun 3 Dateien gleichzeitig geöffnet. Es können maximal 15 Dateien gleichzeitig geöffnet sein. Also geht es nur bis #15. Zum Lesen kann man Input #1,string$ verwenden. Natürlich geht es auch mit anderen "Dateikanälen". Ein kleines Beispiel , dass eine Datei öffnet und diese liest: Declare buffer$ Assign #1,"Datei.txt" Reset #1 WhileNot Eof(#1) Input #1,buffer$ print buffer$ Wend close #1 Nun steht die ganze Datei auf dem Bildschirm. Die WhileNot-Schleife kennst du wahrscheinlich schon aus den vorherigen Kapiteln. Hier ist aber eine neue Bedingung: Eof(#1). Sie ist Englisch und bedeutet "End Of File". Das bedeutet soviel wie "Das Ende der Datei". Aus der Schleife könnte man einen Satz bilden: "Solange,bis du nicht am Ende der Datei angestoßen bist, lese eine Zeile ein und schreibe sie auf den Bildschirm." Man sollte allerdings nur Dateien mit Text so öffnen , denn es macht ja wenig Sinn , wenn man eine Bild-Datei öffnet und nur wirre Zeichen erhält. Ansonsten kann man alles in eine Datei schreiben , was man will. |
Einführung Grundlagen Windows-Modus Anhang |