IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

> Работа с файлами, Как записать данные
V@nix
сообщение 21.05.2005 13:47
Сообщение #1





Группа: Пользователи
Сообщений: 3
Пол: Мужской

Репутация: -  0  +


Народ помогите. Есть 2 файла 1 и 2, в 1-ом файле содержатся записи о книгах:
book= record
  cod:integer;{шифр книги}
  title:integer;{название книги}
  ekz:byte;{кол-во книг в каталоге}
end;

В файле 2 - запись об абонементах:
man=record
  ncb:integer; {номер читательского билета}
  {книги находящиеся у абонемента от 1 до 20 книг}
  k:array[1..20] of atribut;

запись atribut выглядит так:
atribut=record
  shifr:integer;
  when:integer;
  dowhen:integer;
end;


Вопрос! Когда абонемент берет книгу то должны вносится изменения в запись book (файл №1). Изменяется кол-во книг текущей книги book.ekz.
И шифр книги cod добавляется в запись man.k[i].shifr ... Как внести изменения в существующую запись (запись находится в файле)?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Free
сообщение 4.06.2005 19:54
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 16
Пол: Мужской

Репутация: -  0  +


Помогите разобраться с процедурой Delete, которая бы удаляла запись из файла. Если мы удаляем запись из середины файла, то остальные записи, которые распологались за удаляемой записью передвигались на одну позицию влево (в файле) таким образом освободится одно место для записи в конце файла, его тоже требуется удалить, тем самым уменьшив размер файла.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
V@nix   Работа с файлами   21.05.2005 13:47
volvo   А ты уже нашел запись, которую нужно менять, или н...   21.05.2005 13:53
V@nix   Я нашел запись. Лучше покажу, вот эта процедура к...   21.05.2005 18:39
volvo   Так вот после этого: man.k[o].shifr:=book.cod; boo...   21.05.2005 18:51
V@nix   Большое спасибо Volvo!   22.05.2005 21:48
Free   Решил писать в эту же тему. Думаю у меня будет нес...   28.05.2005 18:44
volvo   В принципе - правильно, но есть кое-что "лиш...   28.05.2005 19:00
Free   volvo, спасибо. Ну это я для наглядности написал...   28.05.2005 19:32
volvo   Преобразуем строковое представление числа (храняще...   28.05.2005 19:38
volvo   Подробней читай Turbo Pascal Help...   28.05.2005 20:50
Free   Подскажите как реализовать процедуру добавления но...   29.05.2005 1:11
volvo   Seek(f, FileSize(f)); Write(f, ...)   29.05.2005 8:15
suriv   всмысле увеличить размер ? забей туда что-нить   29.05.2005 2:33
Free   suriv, я неправильно выразился. volvo, спасибо.   29.05.2005 12:34
Free   Очередной вопрос. Сейчас работаю над процедурой ed...   29.05.2005 17:31
volvo   Нет, не будет... Ты не можешь работать с названия...   29.05.2005 18:38
Free   Помогите разобраться с процедурой Delete, которая ...   4.06.2005 19:54
volvo   type telement = record ... end; filetype = fil...   4.06.2005 20:10
Free   Начал отладку программы, появились некоторые пробл...   5.06.2005 14:00
volvo   ... seek(f,i-1); read(f, rec); { <--- Это что,...   5.06.2005 14:41
Free   А можно поинтересоваться, почему до предпоследней...   5.06.2005 17:26
volvo   Потому что seek(f, filesize(f)); означает "п...   5.06.2005 18:11
Free   Всё вроде разобрался, программа раюотает! :) v...   7.06.2005 0:11


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия 25.07.2025 10:50
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"