Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Gostaria de saber como ler um arquivo e separar as informações da string de cada linha.
O arquivo a ser lido é o seguinte:
Corsa Sedan,506672,2700,1.7,2.6,1.6
Gol,402089,2300,1.7,2.2,1.6
Fiorino,307732,3100,2.1,2.8,1.7
EcoSport,204088,3500,2.2,3.0,1.8
Celta,503343,1800,1.7,2.1,1.6
Fusca,105666,2500,1.8,2.3,1.7
Yamaha R1,907523,211,1.3,1.8,0.9
Honda XRE300,902254,156,1.5,1.9,0.9
Uno,502112,1500,1.7,2,1.6
Fiesta Sedan,504356,2650,1.7,2.5,1.6
Kombi,886677,3800,2.2,3.2,1.8
Topic,804321,4000,2.3,3.3,1.8
Golf,669876,2200,1.7,2.3,1.8
Como posso "recortar" a string a cada vírgula encontrada e passar para as variáveis da struct através de vetores?
Por exemplo:
Corsa Sedan,506672,2700,1.7,2.6,1.6
Corsa Sedan = modelo
506672 = chassi
2700 = peso
1.7 = altura
2.6 = comprimento
1.6 = largura
O mesmo vale para um arquivo vagas.txt a ser lido.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct veiculos {
char modelo[30];
char chassi[30];
float peso;
float altura;
float comprimento;
float largura;
} CARROS;
struct vagas {
int ident;
float peso_max;
float altura_max;
float comprimento_max;
float largura_max;
} VAGAS;
char strMenuPrincipal[] =
"\nDigite uma das opcoes abaixo:\n"
"\n1 - Cadastrar novo veiculo\n"
"2 - Registrar entrada de um veiculo\n"
"3 - Registrar saida de um veiculo\n"
"4 - Listar vagas ocupadas\n"
"5 - Consultar vagas\n"
"0 - Sair do programa\n"
"=> ";
/* ******************************************************************************************
* Funcao do programa principal
* ******************************************************************************************/
int main() {
int opt;
//struct veiculos();
FILE* P;
P=fopen("veiculos.txt", "r");
// E AGORA, O QUE FAZER?
puts("\nMENU PRINCIPAL");
puts("Bem vindo ao sistema para controle de estacionamento");
while (1){ //Loop infinito para controlar programa principal
printf(strMenuPrincipal);
scanf("%d",&opt);
switch (opt) {
case 0:
return 0; // Sai do programa
break;
case 1:
//cadastro_veiculo(NULL,NULL);
break;
case 2:
//registrar_entrada_veiculo();
break;
case 3:
//registrar_saida_veiculo();
break;
case 4:
//listar_vagas_ocupadas();
break;
case 5:
//consultar_vagas();
break;
default:
puts("Opcaoo invalida!");
break;
}
}
}
Obrigado!
Carregando comentários...