-1 / 1 / 1
Регистрация: 14.01.2017
Сообщений: 322
1

Как считать слово из файла в поле структуры до запятой?

22.12.2017, 11:14. Показов 971. Ответов 5
Метки нет (Все метки)

есть текстовый файл
Петров, Иван, Федорович, 1, 1994,Ч ;
Сидоров,Петр,Михайлович, 2, 1994,Ч ;
Соколов,Иван,Федорович, 3, 1994,Ч;
Тищенко,Анастасия,Федоровна, 1, 1994,Ж ;
Петров,Ира,Федоровна, 1,1994 ,Ж ;
как присвоить каждой ячейке структуры свое значение задание усложняеться тем что слова идут подряд через запятую
подскажите пожалуйста кто с таким сталкивался!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <conio.h>
#include <string.h>
#include <windows.h>
#include <stdio.h>
#include <iomanip>
using namespace std;
struct data{
    int year;
    char pol;
};
struct student{
    char surname[12];
    char name[12];
    char patronymic[12];
    int course;
    data birthdate;
};
void main()
{
    setlocale(0, "");
    int Count;
    char File[] = "F:/студенты.txt";
    FILE *F_tel;
    data i;
    if ((F_tel = fopen("F:/докум.txt", "rt")) == NULL)
    {
        puts("Открыть файл не удалось\n");
        exit(1);
    }
    student info[1000];
    int size = 0;
    cin >> i.year; int kmen = 0, kgirl = 0;
    while (!feof(F_tel))
    {
        for (int j = 0; F_tel; ++j)
        
        fgets(info[j].surname, 12, F_tel);
        
    }
    system("pause");
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.12.2017, 11:14
Ответы с готовыми решениями:

Считать из файла поля структуры, разделенные точкой с запятой
Доброго времени суток! Делаю летнюю практику по программировании (1 курс, тема &quot;Электросбыт&quot;) и...

Как правильно считать матрицу из текстовый файла, если числа разделены запятой
Здравствуйте! Считываю матрицу из текстового файла следующим образом: m=importdata('in.txt');...

Как считать дробные, разделённые запятой, из csv с разделителем в виде точки с запятой?
Доброго времени суток. Для решения я пробовал использовать несколько функций. dlmread помогает...

Как считать 5 и 8 слово из файла
Дан файл. Как считать пятое и восьмое слово из него?

5
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
22.12.2017, 11:51 2
fscanf().
0
-1 / 1 / 1
Регистрация: 14.01.2017
Сообщений: 322
22.12.2017, 12:52  [ТС] 3
nmcf, спасибо я пыталась её применить
fscanf(F_tel, "%s%*c%s", info[j].surname)
Можете показать на примере пожалуйста

Добавлено через 50 секунд
nmcf, спасибо, я пыталась её применить
fscanf(F_tel, "%s%*c%s", info[j].surname)

Добавлено через 22 минуты
nmcf, while (!feof(F_tel)){
for (int j = 0; F_tel; ++j)
{

fscanf(F_tel, "%s", info[j].surname);
fscanf(F_tel, "%s", info[j].name);
fscanf(F_tel, "%s", info[j].patronymic);
fscanf(F_tel, "%d", info[j].course);
fscanf(F_tel, "%d", info[j].birthdate.year);
fscanf(F_tel, "%s", info[j].birthdate.pol);

}
}
на третей строчке выбивает ошибку
0
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
22.12.2017, 13:43 4
Все параметры одним вызовом. И указатель не забывай для нестроковых.
C++
1
"%[^,],%[^,],%[^,],%d,%d,%c;"
1
-1 / 1 / 1
Регистрация: 14.01.2017
Сообщений: 322
22.12.2017, 14:25  [ТС] 5
nmcf, спасибо большое
fscanf(F_tel, ""%[^, ], %[^, ], %[^, ]%[^, ], %[^, ], %[^, ],%s,%s,%s, %d, %d, %c ", info[j].surname, info[j].name, info[j].patronymic, info[j].course, info[j].birthdate.year, info[j].birthdate.pol);
так?
0
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
22.12.2017, 22:50 6
Не так. Без пробелов. И где указатели? Ещё раз прочитай №4.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.12.2017, 22:50
Помогаю со студенческими работами здесь

Как считать данные с файла в виде структуры?
Здравствуйте! Пишу курсовой проект на си-шарпе, но дело в том что сам си-шарп мы не изучали, т.е....

Как считать из файла символы и цифры одновременно? Структуры
Имеется файл txt с таким заполнением: Gingi 25 12 1 Klinl 36 74 1 Frogo 963 32 2 Hlolo 69 85 1...

Считать строку в поле структуры
Здавствуйте! Делал курсач в си сейчас нужно его на билдер переделать! int f_input(list *tmp) { ...

Как считать слово из входного файла в лист типа стринг
Как считать допустим целую фамилию из входного файла в лист типа стринг, можно ли это сделать не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru