_FFlush( ), API-Bibliotheksroutine
Überträgt alle modifizierten Puffer, die zur angegebenen Datei gehören, aus dem Arbeitsspeicher auf den Datenträger.
int _FFlush(FCHAN chan)
FCHAN chan; /* File channel of file to flush. */
Hinweise
_FFlush( ) gibt 0 zurück, wenn die Pufferübertragung durchgeführt werden konnte. Andernfalls wird -1 zurückgegeben.
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 Datei erstellt. Die Dateilänge wird auf 8196 Bytes festgelegt. Die Visual FoxPro-Befehlszeile DIR TEMP.TXT wird im Befehlsfenster ausgeführt. Dadurch wird angezeigt, dass die Größe der Datei auf dem Datenträger immer noch 0 beträgt. Nach dem Ausführen von = XFFLUSH( ) zeigt das Aufrufen der Befehlszeile DIR TEMP.TXT jedoch an, dass die Datei auf dem Datenträger den Aufruf von _FCHSize( ) wiedergibt und dass die Dateigröße 8196 Bytes beträgt.
Visual FoxPro-Code
SET LIBRARY TO FFLUSH
DIR temp.txt && size on disk is still 0
WAIT WINDOW "File Size = 0"
= XFFLUSH()
DIR temp.txt && size on disk is 8196
WAIT WINDOW "File Size Does Not Equal 0"
CLOSE ALL
C-Code
#include <pro_ext.h>
static FCHAN fchan;
FAR CreateIt(ParamBlk FAR *parm)
{
fchan = _FCreate("temp.txt", FC_NORMAL);
_FCHSize(fchan, 8196);
}
FAR FFlushEx(ParamBlk FAR *parm)
{
_FFlush(fchan);
}
FoxInfo myFoxInfo[] = {
{"ONLOAD", (FPFI) CreateIt, CALLONLOAD, ""},
{"XFFLUSH", (FPFI) FFlushEx, 0, ""},
};
FoxTable _FoxTable = {
(FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo
};
Siehe auch
_FPuts( ), API-Bibliotheksroutine | _FWrite( ), API-Bibliotheksroutine | _FError( ), API-Bibliotheksroutine | Zugreifen auf die Visual FoxPro-API