_FFlush( ) (Rutina de biblioteca API)

Vacía en disco todos los búferes modificados en memoria para el archivo especificado.

int _FFlush(FCHAN chan)
FCHAN chan;               /* File channel of file to flush. */

Observaciones

_FFlush( ) devuelve 0 si tiene éxito en el vaciado de los búferes o devuelve – 1 si falla.

Para obtener más información acerca de cómo crear una biblioteca API e integrarla con Visual FoxPro, vea Acceso a la API de Visual FoxPro.

Ejemplo

El siguiente ejemplo crea un archivo y define su longitud en 8196 bytes. La ejecución de la línea de comandos de Visual FoxPro DIR TEMP.TXT en la ventana Comandos muestra que el tamaño del archivo en disco continúa siendo 0. No obstante, tras ejecutar = XFFLUSH( ), al ejecutar la línea de comandos DIR TEMP.TXT se muestra que el archivo en disco refleja la llamada a _FCHSize( ) y tiene un tamaño de archivo de 8196 bytes.

Código Visual FoxPro

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ódigo C

#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
};

Vea también

_FPuts( ) (Rutina de biblioteca API) | _FWrite( ) (Rutina de biblioteca API) | _FError( ) (Rutina de biblioteca API) | Acceso a la API de Visual FoxPro