Hilfe

ReadString

B2D B+ B3D

Aufruf

text$ = ReadString$ (stream)

Parameter

stream Dateiidentität die mit OpenFile oder ReadFile ermittelt wurde


Rückgabewert

Ein String mit unterschiedlich vielen Zeichen.


Beschreibung

Diese Dateifunktion liest einen "Datensatz" aus einer mit OpenFile oder ReadFile geöffneten Datei.

Jeder Datensatz muss eine Integer Kennung (= 4 Byte) haben, die die Länge des Textes in Zeichen angibt. Diese Kennung wird vor jedem Text gespeichert. Danach folgt ein String mit dieser Länge. Diese Funktion kann nicht auf eine einfache Textdatei angewendet werden, sondern kann nur in Verbindung mit WriteString benutzt werden.

Die Return-Zeichen (0Dh), LineFeed-Zeichen (0Ah) oder Null-Zeichen (00h) haben keine Auswirkung auf die Textlänge! Die Längenkennzeichnung wird nur in der Datei gespeichert, nicht im String.


Zusatzinformationen

Die folgende Tabelle zeigt verschiedene Typen von Werten, die in eine Datei gespeichert werden können:


NameBytesTypeMin.Max.
Byte1Ganzzahl0+255
Short2Ganzzahl0+65535
Integer4Ganzzahl-2147483648+2147483647
Float4Kommazahl-2 Mrd.+2 Mrd.
Lineanz + 2String--
Stringanz + 4String--

Benutze Eof, um zu prüfen, ob das Ende einer Datei erreicht ist. Falls Daten außerhalb der Dateilänge ausgelesen werden, so kommt es nicht zu einem Fehler, aber die zurückgelieferten Strings enthalten keine Zeichen.


Die Datei muss bereits existieren, da sonst eine Fehlermeldung nach einem Lesevorgang erscheint. Benutze vorher den Befehl FileType.


Beispiel

Dieses Programm speichert diverse Werte in eine Datei. Danach werden sie wieder ausgelesen und ausgegeben:

fileout = WriteFile ("mydata.dat")

WriteByte fileout,123
WriteFloat fileout,123.456
WriteInt fileout,12345678
WriteLine fileout,"Hallo"
WriteShort fileout,12345
WriteString fileout,"Super"

CloseFile fileout

filein = ReadFile ("mydata.dat")

wert1 = ReadByte (filein)
wert2# = ReadFloat (filein)
wert3 = ReadInt (filein)
wert4$ = ReadLine$ (filein)
wert5 = ReadShort (filein)
wert6$ = ReadString$ (filein)

CloseFile filein

Print "Byte" +wert1
Print "Float" +wert2
Print "Int" +wert3
Print "Line" +wert4
Print "Short" +wert5
Print "String" +wert6

WaitKey


Siehe auch

Eof, ReadAvail, ReadByte, ReadFloat, ReadInt, ReadLine, ReadShort

Übersicht Datenverwaltung Dateien & Streams