ReadLine

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

CodeFish

Betreff: ReadLine

BeitragMo, Dez 11, 2006 13:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok, ich machs mal kurz, arbeite mich gerade erst wieder ein, und arbeite an einer Funktion die eine Datei einliest und Zeile für Zeile das ganze ausgeben soll, bis EOF erreicht ist.

Code: [AUSKLAPPEN]

      Datei = ReadFile ("daten.txt")
   
      Repeat
         Ausgabe$ = ReadLine$ (Datei)
         Print Ausgabe
      Until Not Eof(Datei)
   
      CloseFile Datei


Nun bleibt er aber bei der ersten Zeiel hängen? Such also den Befehl um in die nächste Zeile zu springen?

Achso unterschiede zwischen ReadLine$() und ReadString$() ?

d-bug

BeitragMo, Dez 11, 2006 13:29
Antworten mit Zitat
Benutzer-Profile anzeigen
ql:ReadLine liest eine ganze Zeile aus und ql:ReadString nur einzelne Strings.

zu deinem Code:
Code: [AUSKLAPPEN]
stream% = OpenFile("daten.txt")
While Not EOF(stream)
     Print ReadLine(stream)
Wend
CloseFile(stream)

sollte funktionieren.

Ich hoffe mal dein Text besteht nicht nur aus einer Zeile Wink
  • Zuletzt bearbeitet von d-bug am Mo, Dez 11, 2006 13:31, insgesamt einmal bearbeitet

Bob

BeitragMo, Dez 11, 2006 13:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Achso unterschiede zwischen ReadLine$() und ReadString$() ?

ReadString Liest einen String ein.
ReadLine eine Zeile. Egal welchen Inhalt die Zeile hat.

Versuch mal
Code: [AUSKLAPPEN]

Datei = ReadFile ("daten.txt")
   
      While not EOF(Datei)
         Ausgabe$ = ReadLine$ (Datei)
         Print Ausgabe
      Wend
   
      CloseFile Datei



EDIT:
Grumpf:
War mal wieder jemand schneller
 

CodeFish

BeitragMo, Dez 11, 2006 14:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Hm ok, also mit einer Kopfgesteuerten Schleife funktioniert es.

Code: [AUSKLAPPEN]

   While Not Eof(Datei)
           Ausgabe$ = ReadLine$ (Datei)
             Print Ausgabe
       Wend


aber warum nicht mit der Fussgesteuerten?

Code: [AUSKLAPPEN]

      Repeat
         Ausgabe$ = ReadLine$ (Datei)
         Print Ausgabe
      Until Not Eof(Datei)


Der Inhalt ist ja der selbe, nur die Prüfung beginnt an unterschiedlichen Punkten. Und die Datei besteht aus 5 Zeilen mit je unterschiedlichen Zeichen und Zahlen.

FOODy

BeitragMo, Dez 11, 2006 14:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
While AUSRUCK

Wend

Wird solange ausgeführt, wie der Ausdruck TRUE ist.


Code: [AUSKLAPPEN]
Repeat

Until AUSDRUCK

Wird solange ausgeführt, BIS der Ausdruck TRUE ist.

EDIT:
Hier jetzt etwas genauer:
Code: [AUSKLAPPEN]
While Not Eof(Datei)
  Ausgabe$ = ReadLine$ (Datei)
  Print Ausgabe
Wend

Die Schleife wird solange ausgeführt, bis die Datei ihr Ende erreicht hat.


Code: [AUSKLAPPEN]
Repeat
  Ausgabe$ = ReadLine$ (Datei)
  Print Ausgabe
Until Not Eof(Datei)

Hier wird die Schleife erst beendet, wenn die Datei noch NICHT ihr Ende erreicht hat.

Das "Not" nach dem "Until" weg und es müsste funzen Wink


Gruß,
FOODy
BlitzMax + MaxGUI, 64-bit Arch Linux: Intel Core² E8500 | 8 GB Ram | GeForce GTX 460 · 1024 MB
  • Zuletzt bearbeitet von FOODy am Mo, Dez 11, 2006 14:49, insgesamt einmal bearbeitet
 

CodeFish

BeitragMo, Dez 11, 2006 14:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Arg, klar logisch! Wie konnte ich das nur übersehen? ist wohl zu sehr zur gewohnheit geworden, aber danke.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group