Cómo leer la entrada de un archivo en c

Cómo leer la entrada de un archivo en c
La información se perderá una vez que finalice un programa. Cuando guardamos los datos en un archivo, se conservará aunque el programa se bloquea. Si tenemos muchos datos para insertar, esto requeriría más tiempo para hacer. Pero, si tenemos un archivo que incluye todo el contenido, lo recuperaríamos rápidamente usando algunas funciones C. Transferiremos directamente el archivo de un dispositivo a otro sin modificaciones.

Hay dos tipos de archivos: texto y binario. Los archivos de texto son aquellos con la extensión .TXT. Estos archivos son fáciles de hacer. Cuando accedamos a estos archivos, recibiremos un texto claro para toda la información. Los datos se pueden modificar o eliminar simplemente. La extensión .Bin denota un archivo binario. En lugar de retener información en texto claro, lo hacen en números binarios (0 y 1).

Discutamos en detalle los diversos enfoques sobre cómo leer el contenido de un archivo.

Uso de la función fseek () para leer la entrada del archivo

Si tenemos una gran cantidad de entradas en un archivo y queremos recuperarlas una por una en una posición particular, entonces debemos iterar a través de cada elemento antes de esto. Consumiría una cantidad significativa de memoria y tiempo de procesamiento. A través de la función fseek (), podemos obtener la información necesaria de manera más eficiente.

#incluir
#incluir
estructura thrinumin

int num1, num2, num3;
;
int main ()

int n;
estructura thrnumber número;
Archivo *fptr;
if ((fptr = fopen ("file_1.txt "," r ")) == null)
printf ("el archivo no se puede abrir");
salida (1);

fseek (fptr, -sizeOf (struct thrnumber), buscar_end);
para (n = 1; n < 5; ++n)

fread (y número, sizeOf (struct thrnumber), 1, fptr);
printf ("n1: %d \ tn2: %d \ tn3: %d \ n", número.num1, número.num2, número.num3);
fseek (fptr, -2*sizeOf (struct thrnumber), Seek_cur);

FCLOSE (FPTR);
regresar 0;

Aquí vamos a comenzar el programa integrando archivos de encabezado requeridos #include y #include . Ahora creamos una función y luego se inicializan tres variables diferentes. Estas variables tienen un tipo de datos enteros. Después de esto, declaramos la función Main () y comenzamos a codificar en el cuerpo de la función Main ().

Además de esto, construimos un puntero de archivo. La declaración "Si" se aplica entonces. Aquí, establecemos el puntero del archivo igual a la función Fopen (). La función fopen () se usa para abrir el archivo especificado. Con la ayuda de la instrucción IF, verificamos si la ruta dada del archivo es igual a la instrucción 'nulo' printf imprime el texto 'el archivo no se puede abrir'. De lo contrario, el programa sale.

Se utiliza el método fseek () adicional. Tiene tres parámetros. El primer argumento contiene el puntero del archivo. El segundo argumento muestra la ubicación del archivo dado. Del mismo modo, el último argumento indica el punto desde donde comienza la desviación. Además de esto, solicitamos un bucle. Declaramos la variable y establecemos la condición para el número y luego, por último, hacemos un incremento en el valor de un número.

Para obtener el texto del archivo especificado, empleamos la función Fread (). Ahora tenemos que imprimir el resultado para que se use la función printf (). Una vez más, aplicamos la función fseek (). Al final para cerrar el archivo dado, utilizamos la función FClose ().

Uso de la función fgetc () para leer la entrada de un archivo

La función fgetc () recupera los caracteres mencionados por el indicador de funciones. Proporciona la palabra recibida por la transmisión y ajusta el punto de lectura hacia la siguiente palabra después de cada lectura válida. Pero si no hay datos presentes para leer, este método calcula un EOF variable (-1).

#incluir
#incluir
#incluir
int main ()

Archivo* fptr;
char chr;
fptr = fopen ("datos.txt "," r ");
if (null == fptr)
printf ("El archivo no puede abrir \ n");

printf ("Los datos del archivo son \ n nombre: amna \ n edad: 24 \ n nombre: sara \ n edad: 16 \ n nombre: anela \ n edad: 30 \ n");
hacer
chr = fgetc (fptr);
printf ("%c", chr);
while (chr != Eof);
FCLOSE (FPTR);
regresar 0;

En primer lugar, incluimos tres archivos de encabezado. La biblioteca estándar es el identificador del archivo de encabezado . Contiene datos sobre disponibilidad de almacenamiento y métodos gratuitos. La entrada de entrada estándar es el identificador del archivo de encabezado . Contiene datos sobre métodos de entrada/salida. El archivo de encabezado incluye declaraciones macro, variables y definiciones de métodos y clases que se utilizan no solo para el procesamiento de texto sino también para diferentes funciones de manejo de almacenamiento.

En el siguiente paso, inicializamos la función Main (). Aquí, se construye un puntero de un archivo especificado y declaramos una variable que tiene un tipo de datos de caracteres. A continuación, utilizamos la función Fopen (). Este método contiene dos argumentos: el primer parámetro muestra el nombre del archivo y el segundo parámetro muestra el modo del archivo. Aquí, el método fopen () abre el archivo definido en el modo de lectura. Hemos estado utilizando la instrucción if para verificar si el puntero del archivo es igual a 'nulo' o no. Si el puntero del archivo es igual a 'nulo', entonces el programa especificado termina. De lo contrario, empleamos la función printf () para imprimir el contenido del archivo.

Además de esto, mediante el uso de un bucle do-while, pasamos por cada personaje uno por uno. Aquí, declaramos la función fgetc () para recuperar los datos del archivo definido. Ahora, aplicamos el bucle While para examinar si el carácter dado no estaría al final de la línea; Si fuera así, deje de leer. Se utiliza el método fclose () y esto pone el archivo para su fin.

Mientras usa la función fgetc (), el código mencionado anteriormente lee los datos completos del archivo, un solo carácter a la vez. Se utilizaría un bucle do-while para recuperar caracteres a menos que lleguen al final del archivo. Produce el char (-1) cada vez que alcanza la conclusión.

Conclusión

En este artículo, hemos pasado por diferentes formas que se utilizan para leer los datos del archivo. Aquí hemos aplicado métodos fgetc (), fread () y fseek () para obtener contenido con la ayuda de ejemplos particulares. Todas estas son funciones predefinidas del idioma C. Para leer cada palabra de un archivo, hemos utilizado el método fgetc (). De manera similar a extraer datos configurados en un archivo, hemos utilizado el método fseek ().