Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
IamSCORPION
SysOp
38 / 37 / 1
Регистрация: 13.04.2009
Сообщений: 274
#1

Количество записей в файле - C++

17.06.2010, 17:24. Просмотров 1167. Ответов 5
Метки нет (Все метки)

Есть файл Students.txt. В нем:
1) первая запись - число типа long, что означает общее количество записей в файле;
2) после - идут n записей по m байтов.
Как подсчитать количество записей в файле и записать сначала файла это количество?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.06.2010, 17:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Количество записей в файле (C++):

c++ как подсчитать количество записей в файле - C++
Есть файл, в нем хранится определенное количество структур размером sizeof(Student), необходимо подсчитать их количество. Пробовал вот так,...

Как узнать количество записей структуры в файле? - C++
Помогите пожалуйста с вопросом: Как узнать количество записей структуры в файле?Желательно функцией,чтобы возвращала количество записей

Редактирование записей в файле - C++
Подскажите идею редактирования записи в файле пожалуйста.

Нумерация записей в файле - C++
Добрый день! Скажите, пожалуйста, как сделать, чтобы нумерация записей в файле, при повторном запуске программы, не прерывалась, а шла по...

Сортировка записей в файле - C++
Нужно написать программу сортировки Работа обязательно с файлами. В файле содержатся данные о сотрудниках предприятия: фамилия,...

В файле с целыми числами найти количество парных, количество удвоенных нечетных, количество квадратов нечетных - C++
Задано файл, компонентами которого являются целые числа. Найти: a) количество парных среди компонент файла; b) количество...

5
Alexandoros
228 / 66 / 4
Регистрация: 02.06.2009
Сообщений: 280
17.06.2010, 17:31 #2
Тяжелый случай... Переставив предложения местами получим более ясную картину

Q: Как подсчитать количество записей в файле и записать сначала файла это количество?
A: первая запись - число типа long, что означает общее количество записей в файле;

Еще вопросы?
0
IamSCORPION
SysOp
38 / 37 / 1
Регистрация: 13.04.2009
Сообщений: 274
17.06.2010, 17:35  [ТС] #3
Цитата Сообщение от Alexandoros Посмотреть сообщение
Тяжелый случай... Переставив предложения местами получим более ясную картину
По заданию сначала должно быть количество записей (число типа long) а потом сами записи(((
0
easybudda
Модератор
Эксперт CЭксперт С++
9662 / 5611 / 952
Регистрация: 25.07.2009
Сообщений: 10,774
17.06.2010, 17:38 #4
1. открыть файл для чтения
C
1
FILE * f = fopen(FILE_NAME, "rb);
2. переместить указатель в конец файла, получить размер файла
C
1
2
3
4
long len;
fseek(f, 0, SEEK_END);
len = ftell(f);
fclose(f);
3. отнять от длинны файла длинну long и разделить что останется на m
C
1
2
3
long n, m;
m = sizeof(DATA_TYPE);
n = (len - sizeof(long)) / m;
4. открыть файл для записи и вписать туда полученное число
C
1
2
f = fopen(FILE_NAME, "r+b");
fwrite(&n, sizeof(long), 1, f);
А вот чего я не понимаю - если в принципе так не сложно получить количество структур, хранящихся в файле, за чем такие оглобли устраивать? Разве что, если из десяти обращений к файлу девять количество структур в нём проверяют, и только десятое с самими структурами что-то делает...
1
Mur3ik
102 / 102 / 4
Регистрация: 12.05.2010
Сообщений: 232
17.06.2010, 17:41 #5
нужен конкретный пример файла... т.к. могут быть динамические поля, такие как ФИО и под них выделено ровно столько сколько надо...
0
easybudda
Модератор
Эксперт CЭксперт С++
9662 / 5611 / 952
Регистрация: 25.07.2009
Сообщений: 10,774
17.06.2010, 17:48 #6
Цитата Сообщение от Mur3ik Посмотреть сообщение
могут быть динамические поля
если
Цитата Сообщение от IamSCORPION Посмотреть сообщение
n записей по m байтов.
видимо, нету там "динамических полей"...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.06.2010, 17:48
Привет! Вот еще темы с ответами:

Изменение в файле записей с заданным значением поля - C++
Написал прогу для заполнения определенных полей и создания текстового файла с этими полями. Подскажите пожалуйста как отредактировать...

В файле имеются 14 записей с полями. В начале отсортировать их по одному полю, потом по другому - C++
Имеется файл, в котором есть поля: №(номер), ФИО, дата рождения, место работы, стаж. Подскажите, как написать программу, чтобы в начале...

Создать массив из 5 записей с полями наименование товара, цена и сохранить его в файле - C++
создать массив из 5 записей с полями наименование товара, цена) сохранить в файле. вывести содержимое файла из предыдущей задачи.с помощью...

Определить количество записей в левой части дерева - C++
Здравствуйте! Итак, есть условие "Определить количество записей в левой части дерева". Помогите пожалуйста с составлением функции к...


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

Или воспользуйтесь поиском по форуму:
6
Yandex
Объявления
17.06.2010, 17:48
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru