Programa de copia de archivos

CBeginner
Practicar Ahora

Introducción

En este laboratorio, crearemos un programa en C para copiar el contenido de un archivo a otro archivo. Leeremos del archivo fuente y escribiremos el contenido en el archivo destino.

Estructura de archivo

Crea un nuevo archivo C llamado main.c. Este archivo contendrá la lógica del programa.

Incluye las bibliotecas necesarias

Necesitamos incluir la biblioteca stdio.h en nuestro programa para trabajar con archivos.

#include <stdio.h>

Declara los punteros a archivo

Necesitamos declarar dos punteros a archivos, uno para el archivo fuente y otro para el archivo destino.

FILE *fp1, *fp2;

Abre el archivo fuente

Necesitamos abrir el archivo fuente para lectura. Si el archivo no se puede abrir, imprimiremos un mensaje de error y saldremos del programa.

if ((fp1 = fopen("source.txt", "r")) == NULL) {
    printf("\nFile cannot be opened.");
    return;
}

Abre el archivo de destino

Necesitamos crear y abrir el archivo destino para escritura.

fp2 = fopen("destination.txt", "w");

Copiar el contenido del archivo

Leeremos el archivo fuente carácter a carácter y escribiremos en el archivo destino hasta que se llegue al final del archivo.

char ch;
while ((ch = fgetc(fp1))!= EOF) {
    fputc(ch, fp2);
}

Cierra los archivos

Después de copiar el contenido, necesitamos cerrar ambos archivos.

fclose(fp1);
fclose(fp2);

Resumen

En este laboratorio, aprendimos cómo leer el contenido de un archivo y escribirlo en otro archivo. Usamos la función fopen() para abrir archivos y las funciones fgetc() y fputc() para leer y escribir el contenido del archivo. Es esencial cerrar los archivos después de completar la tarea usando la función fclose().