Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Kopiert genau die in length angegebene Anzahl Bytes aus einer Datei in den Puffer buffer.
unsigned int _FRead(FCHAN chan, char FAR *buffer, int length)
FCHAN chan; /* File channel of file from which to copy. */
char FAR *buffer; /* Buffer address. */
int length; /* Number of bytes to be copied. */
Hinweise
_FRead( ) fügt am Ende der Bytes im Puffer kein Abschlusszeichen hinzu. Beim Speichern der Bytes in den Puffer findet keine Übersetzung statt. _FRead( ) gibt die Anzahl der gelesenen Bytes zurück.
Weitere Informationen zum Erstellen einer API-Bibliothek und ihrer Integration in Visual FoxPro finden Sie unter Zugreifen auf die Visual FoxPro-API.
Beispiel
Im folgenden Beispiel wird eine Testdatei erstellt und Text darin platziert. Anschließend wird im Beispiel versucht, mit Hilfe von _FRead( ) 32 Bytes aus der Datei zu lesen.
Visual FoxPro-Code
SET LIBRARY TO FREAD
C-Code
#include <pro_ext.h>
#define BUFFSIZE 32
static char buffer[BUFFSIZE];
FAR Example(ParamBlk FAR *parm)
{
FCHAN fchan;
int bytesRead;
fchan = _FCreate("temp.tmp", FC_NORMAL);
_FPuts(fchan, "Hello, world.");
_FPuts(fchan, "Hello, world.");
_FPuts(fchan, "Hello, world.");
_FPuts(fchan, "Hello, world.");
_FPuts(fchan, "Hello, world.");
_FSeek(fchan, 0, FS_FROMBOF);
bytesRead = _FRead(fchan, buffer, BUFFSIZE - 1);
buffer[bytesRead] = '\0';
_PutStr(buffer);
_FClose(fchan);
}
FoxInfo myFoxInfo[] = {
{"FREAD", (FPFI) Example, CALLONLOAD, ""},
};
FoxTable _FoxTable = {
(FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo
};
Siehe auch
_FGets( ), API-Bibliotheksroutine | _FSeek( ), API-Bibliotheksroutine | Zugreifen auf die Visual FoxPro-API