Eu tenho uma lista de pessoas e preciso criar um arquivo chamado bdpessoas.txt e armazenar cada “pessoas” em uma linha com os atributos separadas por virgula, porém está ficando assim:
Arquivo:
Maria
;974544540-81
;38
;1.69
Joao
;616369913-20
;42
;1.73
Roberto
;968382752-89
;20
;1.65
Carlos
;752538230-43
;17
;1.88
Maggie;622941353-04;51;1.59
Código da criação do arquivo e armazenamento dos dados:
void criar_bd_pessoa(tpessoa *vet_pessoa){
FILE *fileRead;
fileRead = fopen("bdpessoas.txt", "w");
if(fileRead == NULL){
printf("Erro na abertura do arquivo!");
return 1;
}
for(int j = 0; j < 5; j++){
fprintf(fileRead, "%s;%s;%s;%s", vet_pessoa[j].nome,vet_pessoa[j].cpf,vet_pessoa[j].idade, vet_pessoa[j].altura);
}
fclose(fileRead);
printf("Dados gravados com sucesso!");
}
Código da criação da lista de pessoas:
void preencher_lista_pessoa(tpessoa *vet_pessoa, tcharitem *vet_nome, tcharitem *vet_cpf, tfloatitem *vet_idade, tfloatitem *vet_altura){
for(int j = 0; j < 5; j++){
vet_pessoa[j].nome = vet_nome[j].descricao;
vet_pessoa[j].cpf = vet_cpf[j].descricao;
vet_pessoa[j].idade = vet_idade[j].numero;
vet_pessoa[j].altura = vet_altura[j].numero;
}
}