You are on page 1of 4

UNIVERSIDAD DE EL SALVADOR

FACULTAD DE INGENIERÍA Y ARQUITECTURA


ESCUELA DE INGENIERÍA DE SISTEMAS INFORMÁTICOS

PROGRAMACIÓN I

GUÍA DE LABORATORIO No. 4


Manejo de archivos secuenciales de texto.

Objetivo: Practicar el manejo de archivos secuenciales, especialmente las funciones de lectura y escritura de
registros sobre ellos.

Contenido:
• Programas con manejo de archivos
• Ejercicios propuestos.

Metodología:
• El estudiante debe digitar, guardar, compilar y ejecutar cada uno de los programas de la Parte I.
• Por su parte, el instructor le indica uno de los ejercicios propuestos, de la Parte II, para que el
estudiante resuelva.

PARTE I: Ejemplos completos


1. Muestra la utilización de funciones (fputs, rewind, fgetc) de escritura y lectura de archivos planos, se
imprimen en el archivo 2 líneas mediante la función fputs y luego se leen estas líneas mediante la función
fgetc.

#include<stdio.h>
#include<conio.h>
int main ( )
{
FILE *fp;
fp = fopen ( "fichero1.txt", "a+" );
char cadena[] = "Mostrando el uso de lectura y escritura de un fichero.\n";
char caracter;

fputs( cadena, fp );
fputs( "Esto es otra linea\n", fp );
printf("Se imprimieron 2 filas en el archivo\n");
printf("Se leera el archivo filas\n\n");
getch();
rewind(fp);
printf("\nEl contenido del archivo de prueba es \n\n");

while (feof(fp) == 0)
{
caracter = fgetc(fp);
printf("%c",caracter);
}
fclose ( fp );
getch();
return 0;
}

MCP – CAH ciclo II - 2011 1


2. Ejemplo de función fprintf para escribir en un archivo y de la función fscanf para leer el contenido del
Archivo de texto.

//Llenado e impresion de los datos de un archivo


#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

main()
{
char carnet[8];
float nota1, nota2;
int seguir=1;
FILE *archivo;

if((archivo = fopen("notas.txt", "a"))== NULL)


{
printf("Error de apertura de archivo\n");
}
else
{
while(seguir != -1)
{
fflush(stdin);
printf("\nDigite Carnet del Alumno (formato AA#####):");
gets(carnet);
fflush(stdin);
printf("\nNota 1:");
scanf("%f", &nota1);
while(nota1<0.0 && nota1>10.0)
{
printf("ERROR...nota debe ser entre 0.00 y 10.0");
printf("\nDigite de nuevo Nota 1:");
scanf("%f", &nota1);
}
printf("\nNota 2:");
scanf("%f", &nota2);
while(nota2<0.0 && nota2>10.0)
{
printf("ERROR...nota debe ser entre 0.00 y 10.0");
printf("\nDigite de nuevo Nota 2:");
scanf("%f", &nota2);
}

fprintf(archivo, "%s %.2f %.2f \n", carnet, nota1, nota2);

printf ("\nDesea salir? Digite -1, cualquier otro numero para continuar");
scanf("%d", &seguir);
}
fclose(archivo);
}
// Lectura del Archivo notas.txt
if((archivo = fopen("notas.txt", "r"))== NULL)
{

MCP – CAH ciclo II - 2011 2


printf("Error de apertura de archivo");
}
else
{
fscanf(archivo, "%s %f %f", carnet, &nota1, &nota2);
while(!feof(archivo))
{
printf("\nCarnet del alumno: %s\n", carnet);
printf("Nota 1: %.2f \n Nota 2: %.2f\n", nota1, nota2);
fscanf(archivo, "%s", carnet);
fscanf(archivo, "%f",&nota1);
fscanf(archivo, "%f",&nota2);
}
fclose(archivo);
}
getch();
return 0;
}

3. Ejemplo de uso de archivo de texto con datos alfanuméricos.

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
main ()
{
FILE *fp;
char buffer[100] = "Esto es un texto dentro del archivo.";

// Escribiendo en el archivo

if((fp = fopen ( "fichero2.txt", "w" ))== NULL)


printf ("\nERROR en abrir el archivo...");
else
{
fprintf(fp,"%s" ,buffer);
fprintf(fp, "%s", "\nEsto es otro texto dentro del archivo.\n");
fclose ( fp );
printf("\nSe escribieron 2 lineas en el archivo\n ");
}
printf("\nPresione cualquier tecla para ver el contenido del archivo...");
getch();

// Leyendo del archivo

if((fp = fopen( "fichero2.txt", "r" ))== NULL)


printf ("ERROR en abrir el archivo...");
else
{
fscanf(fp, "%s", buffer);

MCP – CAH ciclo II - 2011 3


printf("\nFrases del archivo: \n");
while(!feof(fp))
{
printf("%s\n", buffer);
fscanf(fp, "%s", buffer);
}
fclose(fp);
}
getch();
return 0;
}

PARTE II: Ejercicios propuestos:


1) Utilizando las funciones cree un archivo de texto con la siguiente secuencias de líneas:
Hola este es un archivo de prueba
ahora estas en la fila número 2
y esta es la ultima

El programa debe imprimir el archivo.

2) Actualice el archivo que utilizó en el ejercicio anterior:


• Agregue tres (3) registros o líneas, al archivo,
• Elimine el primer registro (o línea) que tiene el archivo.
• Cambie la segunda línea o registro por la frase: “Lo he logrado, cambie la línea 2”.
• Imprima el contenido de su archivo, registro por registro.

3) Una empresa necesita cargar la información sobre sus ventas desde un archivo de texto, el archivo posee
el siguiente formato

Fecha Sucursal Monto_venta


01/01/2011 San Salvador. 100
01/01/2011 Soyapango. 50.21
02/01/2011 San Salvador 150.32
02/01/2011 Soyapango 36.36

MCP – CAH ciclo II - 2011 4

You might also like