load()

load(<nombre de archivo>, <OFFSET dato>)

Descripción:

Carga un bloque de datos de un archivo en el disco a la memoria del programa.

Para ello la función requiere el nombre del archivo y el desplazamiento dentro de la memoria del ordenador de la variable, tabla o estructura guardada en el disco (el desplazamiento del dato se puede obtener con operador OFFSET).

Se debe especificar el desplazamiento del mismo dato que se especificó al guardar el archivo con la función save().

Los nombres de archivo se pueden dar especificando una ruta de acceso, que debe ser la misma que la utilizada con la función save() para guardar el archivo. No obstante no es necesario especificar una ruta.

Es importante que el archivo que se pretende cargar se haya creado anteriormente, pues se producirá un error si se intenta cargar un archivo que no existe (si bien éste puede ser ignorado y continuar la ejecución del programa).

Programa ejemplo:
PROGRAM ejemplo_load;

PRIVATE
    tabla[9];
    contador;

BEGIN
    write (0, 0, 0, 0, "Pulse [ENTER] para borrar los datos.");
    write (0, 0, 10, 0, "Pulse [ESPACIO] para cargar los datos del disco");
    write (0, 0, 30, 0, "Valores actuales de los datos:");
    FROM contador=0 TO 9;
        tabla[contador]=rand(0, 100);
        write_int(0, 0, 40+(contador*10), 0, offset tabla[contador]);
    END
    save("help\help.dat", offset tabla, sizeof(tabla));
    LOOP
        IF (key(_enter))
            FROM contador=0 TO 9;
                tabla[contador]=0;
            END
        END
        IF (key(_space))

            load("help\help.dat", offset tabla); // Se cargan los datos del disco

        END
        FRAME;
    END
END


Al inicio del ejemplo se crea una tabla de 10 posiciones (del 0 al 9) con valores aleatorios. Esta tabla se graba en el disco con la función save().

Cuando se pulsa la tecla ENTER se borran los valores de la tabla (se ponen a 0 las 10 posiciones).

Cuando se pulsa la barra espaciadora se cargan los valores de la tabla del disco con la función load().


Ver: save() - sizeof()