У меня есть задание программирования, которое дает файл данных «candidatesdata.txt» Вы должны читать информацию и расшифровывать, что такое имя, пол, высота и вес. Единственная проблема заключается в том, что между каждой записью данных есть цитаты вокруг имени и запятых. Файл выглядит следующим образом:Игнорирование ненужных символов при чтении из файла в C
Name,Gender,Height,Weight
"Tanner, Mark C.”,M,71.8,180.25
"Jinglehiemmerschmitt, John J.”,M,70.75,185.3
"Parker, Sarah J.",F,65.25,120.3
..cont.
Как читать записи данных и игнорировать цитаты и запятые? Это то, что у меня есть до сих пор, оно удаляет некоторые запятые и цитаты, но также и в процессе удаления имен.
#include <stdio.h>
struct candidateinfo
{
char name[50];
char gender;
double height;
double weight;
}candidate;
int main()
{
int count =0;
FILE *candidate_data;
// Open file
candidate_data = fopen("/Users/moisestrevino/Documents/CS 1324/Assignment #5/Assignment #5/candidatedata.txt","r");
fscanf(candidate_data, "%*[^\n]");
fgetc(candidate_data);
// Get rid of unecessary letters
while (count<40)
{
count++;
fscanf(candidate_data,"\"%[^\"],%c,%lf,%lf\n", candidate.name, &candidate.gender, &candidate.height, &candidate.weight);
printf("%s %c %lf %lf\n",candidate.name, candidate.gender, candidate.height, candidate.weight);
}
fclose(candidate_data);
return 0;
}
Выход:
Tanner, Mark C. 0.000000 0.000000
,M,71.8,180.25
0.000000 0.000000
Jinglehiemmerschmitt, John J. 0.000000 0.000000
,M,70.75,185.3
0.000000 0.000000
Parker, Sarah J. 0.000000 0.000000
,F,65.25,120.3
0.000000 0.000000
Meeks, Kalvin R. 0.000000 0.000000
,M,57.25,210.2
cont...
вы ___must___ сначала прочитайте [это] (http://stackoverflow.com/q/5431941/2173917). –
А также, пожалуйста, укажите свой код – Eregrith
Должен ли я использовать EOF вместо этого? –