Чтение файлов, разделенных табуляцией в c
Я действительно новичок в C, и чтение файлов сводит меня с ума ... Я хочу прочитать файл, включающий имя, место рождения и номер телефона и т. Д. Все разделены вкладкой
Формат может быть таким:
Bob Jason Los Angeles 33333333
Alice Wong Washington DC 111-333-222
Поэтому я создаю структуру для записи.
typedef struct Person{
char name[20];
char address[30];
char phone[20];
} Person;
Я пробовал много способов прочитать этот файл в структуру, но это не удалось. Я устал от фреда
read_file = fopen("read.txt", "r");
Person temp;
fread(&temp, sizeof(Person), 100, read_file);
printf("%s %s %s \n", temp.name, temp.address, temp.phone);
Но строка char не записывается в temp, разделенный табуляцией, она читает весь файл в temp.name и получает странный вывод.
Затем я попытался fscanf и sscanf, те, которые не работают для разделения вкладки
fscanf(read_file, "%s %s %s", temp.name, temp.address, temp.phone);
Или же
fscanf(read_file, "%s\t%s\t%s", temp.name, temp.address, temp.phone);
Это разделяет строку пробелом, поэтому я получаю Боба и Джейсона по отдельности, тогда как на самом деле мне нужно получить «Боба Джейсона» как одну строку символов. И я сделал этот формат по вкладке, когда я создал текстовый файл.
То же самое для sscanf, я пробовал разные способы много раз ...
Пожалуйста помоги...