FRead(): Unterschied zwischen den Versionen

Aus Wiki des Deutschsprachige Xbaseentwickler e. V.
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „ == Allgemeines == Die Funktion fRead() erlaubt es, aus einer mittels fOpen() geöffneten, bzw. mittels fCreate() erstellten Datei eine bestimmte Anza…“)
 
Keine Bearbeitungszusammenfassung
Zeile 39: Zeile 39:
   ...
   ...
  ENDIF
  ENDIF
Abweichend davon liefert die Funktion [[fReadStr()]] den gelesenen String zurück, so dass eine Initialisierung nicht erforderlich ist. fRead() liest (sofern vorhanden) die durch nBytes vorgegebene Anzahl Zeichen und endet nicht, wenn ein [[Chr()|Chr(0)]] gefunden wird.
== Querverweise ==
[[fReadStr()]]
== benötigte DLLs bzw. Include-Dateien ==
XppRT1.dll
== Zuordnung ==
[[Low Level Dateifunktionen]]

Version vom 9. Januar 2017, 12:46 Uhr

Allgemeines

Die Funktion fRead() erlaubt es, aus einer mittels fOpen() geöffneten, bzw. mittels fCreate() erstellten Datei eine bestimmte Anzahl Zeichen zu lesen.


Syntax

fRead(<nHandle>, @<cBuffer>, <nBytes>) => nBytesRead


Parameter

<nHandle> ist der Datei-Handle, der durch fOpen() bzw. fCreate() für die Datei bereitgestellt wurde.

<cBuffer> ist eine Zeichenvariable, die by reference übergeben werden muss und mindestens die durch <nBytes> definierte Grösse besitzt.

<nBytes> gibt an, wieviele Bytes aus der Datei ab der aktuellen Position gelesen werden sollen.


Rückgabewert

<nBytesRead> gibt an, wieviele Bytes gelesen werden konnten. Wenn nBytesRead kleiner ist als nBytes, wurde das Dateiende erreicht, ehe nBytes gelesen werden konnten.


Besonderheiten

Normalerweise liegt das Hauptinteresse bei Verwendung dieser Funktion darauf, eine Zeichenfolge aus einer Datei zu lesen. Der Rückgabewert bei fRead() ist jedoch die Anzahl der Zeichen, die gelesen werden konnten.

Um die Zeichenfolge zu erhalten, muss der zweite Parameter by reference übergeben werden und in der entsprechendnen Grösse initialisiert worden sein.

nHandle := fOpen("geheimeInformationen.txt")
IF nHandle > 0
  nSize := fSize(nHandle)
  cBuffer := Space(nSize)
  nBytes := fRead(nHandle, @cBuffer, nSize)
  ...
ENDIF

Abweichend davon liefert die Funktion fReadStr() den gelesenen String zurück, so dass eine Initialisierung nicht erforderlich ist. fRead() liest (sofern vorhanden) die durch nBytes vorgegebene Anzahl Zeichen und endet nicht, wenn ein Chr(0) gefunden wird.


Querverweise

fReadStr()


benötigte DLLs bzw. Include-Dateien

XppRT1.dll


Zuordnung

Low Level Dateifunktionen