FileCopy - Copiador de Arquivo de Texto
Programa simples que cria uma cópia de um arquivo de texto.
Autor: André Rosa
Modo de uso:
./FileCopy ArquivoEntrada.txt ArquivoSaida.txt
Autor: André Rosa
Modo de uso:
./FileCopy ArquivoEntrada.txt ArquivoSaida.txt
Descrição
Programa simples que cria uma cópia de um arquivo de texto.
Autor: André Rosa
Modo de uso:
./FileCopy ArquivoEntrada.txt ArquivoSaida.txt
Autor: André Rosa
Modo de uso:
./FileCopy ArquivoEntrada.txt ArquivoSaida.txt
#include <stdio.h>
#define ARQ_1 args[1]
#define ARQ_2 args[2]
int main(int argc, char* args[]){
FILE* MyFile;
FILE* MyFileOut;
char* Linha = (char*)malloc(sizeof (char) * 1000);
char c;
int i = 0;
MyFile = fopen(ARQ_1,"r");
if (!MyFile) {
printf("O arquivo nao existe.");
return 1;
} else {
printf("Arquivo encontrado!\n");
printf("Realizando a leitura e copiando seu conteudo...\n");
while((c = getc(MyFile)) != EOF) {
// if (c != '\n') {
Linha[i] = c;
close(1);
MyFileOut = fopen(ARQ_2, "a");
printf("%c",Linha[i]);
i++;
// }
}
Linha[i] = '\0';
}
return 0;
}
Nem mesmo existe um comando para gravar o arquivo no 2º arquivo!
O Código escrito no Texto disponibilizado está ainda mais errado e completamente diferente do disponível para download!
Sugiro que o Autor faça as correções e tenha mais atenção quando publicar um Artigo
Tenha mais atenção para que o código escrito na página seja o mesmo disponibilizado para download.
ERROS
CriaArquivo.c:9:26: error: implicit declaration of function ‘malloc’ [-Wimplicit-function-declaration]
9 | char* Linha = (char*)malloc(sizeof (char) * 1000);
| ^~~~~~
CriaArquivo.c:9:26: error: incompatible implicit declaration of built-in function ‘malloc’ [-Werror]
CriaArquivo.c:2:1: note: include ‘<stdlib.h>’ or provide a declaration of ‘malloc’
1 | #include <stdio.h>
+++ |+#include <stdlib.h>
2 |
CriaArquivo.c:23:17: error: implicit declaration of function ‘close’; did you mean ‘pclose’? [-Wimplicit-function-declaration]
23 | close(1);
| ^~~~~
| pclose
CriaArquivo.c:8:11: error: variable ‘MyFileOut’ set but not used [-Werror=unused-but-set-variable]
8 | FILE* MyFileOut;
| ^~~~~~~~~
cc1: all warnings being treated as errors
error: character constant too long for its type [-Werror]
32 | Linha[i] = '
#include <stdio.h> #define ARQ_1 args[1] #define ARQ_2 args[2] int main(int argc, char* args[]){ FILE* MyFile; FILE* MyFileOut; char* Linha = (char*)malloc(sizeof (char) * 1000); char c; int i = 0; MyFile = fopen(ARQ_1,"r"); if (!MyFile) { printf("O arquivo nao existe."); return 1; } else { printf("Arquivo encontrado!\n"); printf("Realizando a leitura e copiando seu conteudo...\n"); while((c = getc(MyFile)) != EOF) { // if (c != '\n') { Linha[i] = c; close(1); MyFileOut = fopen(ARQ_2, "a"); printf("%c",Linha[i]); i++; // } } Linha[i] = '\0'; } return 0; }';