Backup de arquivo

1 resposta
F

Olá pessoal é o seguinte, tenho um código aqui que faz gravação de entrada de dado em arquivo txt, porém ele grava tudo numa linha só com espaço e etc desta maneira: (Nome da pessoa idade habilidade), ele sai impresso no txt desta maneira.
Até aí tudo bem…
Preciso de fazer um backup de arquivos txt e está funcionando parcialmente pois ele grava somente até “Nome” e não grava o restante que está naquela linha por conta do espaço sendo que ele aguarda que a linha abaixo tenha dados, mas isto não acontece pois tudo é gravado em uma única linha no txt.

Como devo tratar esta situação para que ele grave no backup toda linha do txt?
Vejam parte do código em que se executa o backup:

int backup(){

void copiar(FILE *c, FILE *back);

c = fopen(competicao.txt, r);

if(c == NULL){

printf("\nErro ao abrir");

return 0;

}

back = fopen(backup.txt, w);

copiar(c, back);
fclose(c);
fclose(back);
return 0;
}

void copiar(FILE *c, FILE *back){//copia para backup

char leitor[1000];

while(fgets(leitor, sizeof(leitor), c)!= ‘\0); //ler até valor nulo, gostaria que lê-se a linha até o fim

fputs(leitor, back);

printf("\nBackup realizado\n");

}

1 Resposta

S

Cara não compreendi a sua dúvida, já que rodei seu
código e funcionou como esperado.

Talvez seria melhor você reformular sua pergunta.

o/

Criado 29 de abril de 2016
Ultima resposta 7 de mai. de 2016
Respostas 1
Participantes 2