Programa para Copiar Arquivo

CBeginner
Pratique Agora

Introdução

Neste laboratório, criaremos um programa C para copiar o conteúdo de um arquivo para outro arquivo. Leremos do arquivo de origem e escreveremos o conteúdo no arquivo de destino.

Estrutura do Arquivo

Crie um novo arquivo C chamado main.c. Este arquivo conterá a lógica do programa.

Inclua as bibliotecas necessárias

Precisamos incluir a biblioteca stdio.h em nosso programa para trabalhar com arquivos.

#include <stdio.h>

Declare os ponteiros de arquivo

Precisamos declarar dois ponteiros de arquivo, um para o arquivo de origem e outro para o arquivo de destino.

FILE *fp1, *fp2;

Abrir arquivo fonte

Precisamos abrir o arquivo de origem para leitura. Se o arquivo não puder ser aberto, imprimiremos uma mensagem de erro e sairemos do programa.

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

Abrir arquivo de destino

Precisamos criar e abrir o arquivo de destino para escrita.

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

Copiar o conteúdo do arquivo

Vamos ler o arquivo de origem caractere por caractere e escrever no arquivo de destino até que o final do arquivo seja alcançado.

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

Fechar os arquivos

Após copiar o conteúdo, precisamos fechar ambos os arquivos.

fclose(fp1);
fclose(fp2);

Resumo

Neste laboratório, aprendemos como ler o conteúdo de um arquivo e escrevê-lo em outro arquivo. Usamos a função fopen() para abrir arquivos e as funções fgetc() e fputc() para ler e escrever o conteúdo dos arquivos. É essencial fechar os arquivos após concluir a tarefa usando a função fclose().