Tenho um arquivo no formato .txt contendo várias matriculas, o problema e que muitas matriculas estão repetidadas. Como eu faço pra percorrer esse arquivo eliminando as matriculas repetidadas?
Em negrito está uma parte das matriculas.
c000418
c045582
c014950
c200221
c012336
c224782
C029354
c247056
c521265
c002966
c036505
c041898
c024981
c543712
C035072
c052765
c502165
c536881
c569401
c574212
c622132
c731750
c034950
c001645
c007184
c061047
c814929
c056433
c029315
c777419
c781497
c835335
C024399
c012789
c838030
c035500
c045482
c046139
c834615
c531528
c040606
c046859
C029906
c065282
c040605
c004800
c029262
c098245
c038381
c013265
c049654
c860003
C206983
c045253
c212205
c028307
c030763
C056191
c043012
c004863
C275731
c056041
c868167
c024596
c035427
C026405
c041787
c056398
c035609
c323330
c012347
c045958
C030903
c000418
c000634
c013324
c001046
c001645
c502165
c003138
c003644
c027509
c105127
c027985
C036985
c044484
c035376
c056154
c056157
c056161
c062251
c070181
c014950
c015216
c075137
c000178
c015904
c117867
c002966
c017477
c841086
c018188
c007184
c012336
c015948
c019900
c035520
c055847
c039109
C443297
c459129
c015074
Eu tenho um algoritmo que já captura essas matriculas pra mim.
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main() {
FILE *fpin; //variável do arquivo
FILE *fpout; //variável do arquivo
char frase[2048];
char arquivo[20];
char frase_saida[2048];
int i=0;
int l=1;
int k=0;
printf("Abrindo Painel txt\n");
fpin=fopen("Painel.txt","r"); //abrindo para leitura
if(fpin==NULL) {
printf("Erro!");
exit(1);
}
fpout=fopen("Salvando.txt","w"); //criando para escrita
if(fpout==NULL) {
printf("Erro!");
exit(1);
}
k=0;
while(!feof(fpin)&&(k==0)) { //enquanto não for o final do arquivo
fgets(frase,2048,fpin); // lê as 2048 próximas
frase[37]=0;
if (!strcmp(" Painel_Controle Group",frase)) {
fgets(frase,2048,fpin); // lê as 2048 próximas
fgets(frase,2048,fpin); // lê as 2048 próximas
fgets(frase,2048,fpin); // lê as 2048 próximas
fgets(frase,2048,fpin); // lê as 2048 próximas
while(!feof(fpin) && k==0 && frase[4]!='A' ) { //enquanto não for o final do arquivo
Pergunta
joaozinho
Tenho um arquivo no formato .txt contendo várias matriculas, o problema e que muitas matriculas estão repetidadas. Como eu faço pra percorrer esse arquivo eliminando as matriculas repetidadas?
Em negrito está uma parte das matriculas.
c000418
c045582
c014950
c200221
c012336
c224782
C029354
c247056
c521265
c002966
c036505
c041898
c024981
c543712
C035072
c052765
c502165
c536881
c569401
c574212
c622132
c731750
c034950
c001645
c007184
c061047
c814929
c056433
c029315
c777419
c781497
c835335
C024399
c012789
c838030
c035500
c045482
c046139
c834615
c531528
c040606
c046859
C029906
c065282
c040605
c004800
c029262
c098245
c038381
c013265
c049654
c860003
C206983
c045253
c212205
c028307
c030763
C056191
c043012
c004863
C275731
c056041
c868167
c024596
c035427
C026405
c041787
c056398
c035609
c323330
c012347
c045958
C030903
c000418
c000634
c013324
c001046
c001645
c502165
c003138
c003644
c027509
c105127
c027985
C036985
c044484
c035376
c056154
c056157
c056161
c062251
c070181
c014950
c015216
c075137
c000178
c015904
c117867
c002966
c017477
c841086
c018188
c007184
c012336
c015948
c019900
c035520
c055847
c039109
C443297
c459129
c015074
Eu tenho um algoritmo que já captura essas matriculas pra mim.
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main() {
FILE *fpin; //variável do arquivo
FILE *fpout; //variável do arquivo
char frase[2048];
char arquivo[20];
char frase_saida[2048];
int i=0;
int l=1;
int k=0;
printf("Abrindo Painel txt\n");
fpin=fopen("Painel.txt","r"); //abrindo para leitura
if(fpin==NULL) {
printf("Erro!");
exit(1);
}
fpout=fopen("Salvando.txt","w"); //criando para escrita
if(fpout==NULL) {
printf("Erro!");
exit(1);
}
k=0;
while(!feof(fpin)&&(k==0)) { //enquanto não for o final do arquivo
fgets(frase,2048,fpin); // lê as 2048 próximas
frase[37]=0;
if (!strcmp(" Painel_Controle Group",frase)) {
fgets(frase,2048,fpin); // lê as 2048 próximas
fgets(frase,2048,fpin); // lê as 2048 próximas
fgets(frase,2048,fpin); // lê as 2048 próximas
fgets(frase,2048,fpin); // lê as 2048 próximas
while(!feof(fpin) && k==0 && frase[4]!='A' ) { //enquanto não for o final do arquivo
fgets(frase,2048,fpin); // lê as 2048 próximas
if (!strcmp(" ",frase)) {
k=1;
return (0);
}
fprintf(fpout,frase); //grava no arquivo
}
}
}
fclose(fpin);
fclose(fpout);
system("pause");
return(0);
}//fim
Editado por quintelabTítulo alterado
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.