Lectura y escritura de archivos de texto en Octave

En este tutorial, abordaremos el proceso de lectura y escritura de archivos de texto mediante Octave.

Creación de un nuevo archivo

Para generar un nuevo archivo, es necesario recurrir a la función fopen(), especificando tanto el nombre del archivo como el modo de acceso de escritura "w". A modo de ilustración:

>> MyFile=fopen("test2.txt", "w");

Posteriormente, se pueden introducir dos registros en dicho archivo utilizando la función fprintf()

>> fprintf(MyFile, "1 record \n");
>> fprintf(MyFile, "2 record \n");

Como alternativa, es viable emplear la función fputs() para el mismo propósito.

>> fputs(MyFile, "1 record \n");
>> fputs(MyFile, "2 record \n");

El resultado obtenido será idéntico en ambos casos.

Es importante señalar que al concluir cada cadena es recomendable añadir el símbolo de nueva línea \n. Esto permite avanzar a una línea subsiguiente y comenzar un nuevo registro. De omitir este paso, el comando printf() subsiguiente proseguirá escribiendo en el registro actual.

Una vez finalizado el proceso de introducción de registros, es esencial cerrar el archivo mediante la función fclose()

>> fclose(MyFile);

Procedimiento para leer un archivo

Para acceder al contenido de un archivo de texto, se debe utilizar la función fopen(), indicando el nombre del archivo y el atributo de lectura "r".

Se recomienda asignar el archivo a una variable, por ejemplo, MyFile

>> MyFile=fopen("test2.txt", "r");

Ten en cuenta que el archivo tiene dos registros dentro.

Para extraer un registro del archivo, se emplea el comando fgetl()

>> fgetl(MyFile)

Dicho comando proporcionará el contenido del primer registro

ans = 1 record

Para leer el registro siguiente, que también es el último, use la declaración fgetl() nuevamente.

>> fgetl(MyFile)

Este comando revelará el contenido del segundo y último registro

ans = 2 record

Si se reintroduce el comando fgetl(), se obtendrá como resultado -1, indicando que se ha alcanzado el final del archivo.

>> fgetl(MyFile)

ans = -1

Cuando hayas terminado, cierra el archivo.

>> fclose(MyFile);

Lectura del archivo mediante estructura de bucle

Es posible automatizar la lectura del contenido del archivo mediante una estructura de bucle, evitando la necesidad de invocar repetidamente fgetl()

MyFile=fopen("test4.txt", "r");
eof=0;
while eof==0
rec =fgetl(MyFile)
if (rec==-1) eof=1; endif
end
fclose(MyFile)

Incorporación de registros a un archivo preexistente

Para incorporar registros adicionales a un archivo ya existente, se debe abrir en modo de anexado utilizando la función fopen() con el modo de acceso 'a'.

Por ejemplo, al abrir el archivo "test2.txt", que ya contiene dos registros

>> MyFile=fopen("test2.txt", "a");

Posteriormente, se puede añadir un registro adicional mediante las funciones fprintf() o fputs()

>> fprintf(MyFile, "3 record \n");

Al concluir la incorporación de registros, es imperativo cerrar el archivo con la función fclose()

>> fclose(MyFile);

Con ello, el archivo contará con tres registros.

Modalidades de acceso al archivo

Existen diversas modalidades de acceso al archivo, además de los modos de lectura ('r') y escritura ('w')

'r' = apertura del archivo en modo de lectura
'w' = generación de un archivo nuevo en modo de escritura
'a' = incorporación de registros al final de un archivo preexistente
'r+' = apertura del archivo en modos de lectura y escritura simultáneos
'w+' = generación de un archivo nuevo con modos de lectura y escritura
'a+' = apertura del archivo en modos de lectura y escritura, posicionándose al final del mismo

Con este tutorial, se ha proporcionado una visión detallada sobre cómo leer y escribir archivos de texto en Octave.

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Archivos en Octave

FAQ