How to read a file and insert data in c

0

Hello, I'm new to C and I have the following doubt

I have a program that needs to save and read student data.

Sample student below:

 typedef struct academico{
     char nome[50];
     char cidade[30];
     char estado[20];
     char rga[12];
    }aluno;

I can save everything ok. obs. saved the entire structure of a student, per line.

In reading I use a fgets detro from a while to the end of the file to read all the records, within the while as below

void lerAluno(){

FILE *ptArq;
char str[60];
ptArq = fopen("DadosAlunos", "r");

if(ptArq == NULL){
    printf("erro");
    return 0;
}
char linha[112];

while((fgets(linha, sizeof(linha),ptArq)) != NULL){

  //aqui eu usode uma função para ler a "string" até o ; e colocar dentro de uma variavel
 // porem após o primeiro ; eu não sei de nenhuma forma de separar os dados restantes da mesma forma sem usar um monte de variaveis e while
// é possivel resolver isso com ponteiros seria o ideal

}

Example of how the data is inside the file:

augusto; treslagoas; ms; 654321

jose; saopaulo; sp; 123456

    
asked by anonymous 08.12.2018 / 03:11

1 answer

0

If you want to register, try this:

fprintf(ponteiroArquivo, "\n------------------------\n");
fprintf(ponteiroArquivo,"nome: %s\n",aluno.nome);
fprintf(ponteiroArquivo,"Cidade: %s\n",aluno.cidade);
fprintf(ponteiroArquivo,"Estado: %s\n",aluno.estado);
fprintf(ponteiroArquivo,"RGA: %s\n",aluno.rga);

fclose(ponteiroArquivo); //fecha o arquivo
    
08.12.2018 / 04:13