![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Здравствуйте уважаемые софорумцы.
Сижу не один час и не могу понять: в чём проблема моей программы. Мне поставлена задача создать БД без БД, т.е. использовать файл записи. Непосредственно перейдём к самой программе. Запись в файл записи проходит нормально. Проверял. Но при выводе информации в StringGrid начинается просто хардкор: Нужно прописать процедуру, чтобы выводились определённые записи с определёнными характеристиками. Процедура есть, но её работа не является корректной. Пожалуйста, Помогите !!! ---------------------------- Спасибо большое за помощь Последний раз редактировалось mad-d, 15.12.2013 в 13:25. |
#2
|
|||
|
|||
![]() Описание типа записи (record), код процедур записи в файл и чтения, а так же заполнения строки, в студию. Только эти куски кода. Разбираться в проекте лень.
|
#3
|
||||
|
||||
![]() Цитата:
![]() Так фильтры не пишут (пытаясь перебрать все возможные варианты). Проверяй, вот так вроде правильно работает: Код:
p.s. Ещё непонятно почему в записи пробег и цена в виде строк, а не чисел. Ну и компоненты желательно переименовать по смыслу. |
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
mad-d (16.12.2013)
|
#4
|
|||
|
|||
![]() Спасибо большое. Скорее всего у меня не получалось организовать процедуру поиска в результате нерациональности моих записей.
Еще раз, БОЛЬШОЕ СПАСИБО ! Выручили =) ![]() P.S. А можно ли как-нибудь реализовать процедуру редактирования и удаления отдельных записей в файле. Если есть мысли, то поделитесь =) Буду нереально рад Последний раз редактировалось mad-d, 16.12.2013 в 16:55. |
#5
|
||||
|
||||
![]() Цитата:
Удаление записи: если нужно удалить последнюю запись, то всё просто - перемещаемся к ней с помощью Seek и обрезаем файл с помощью Truncate. Если же нужно удалить не последнюю запись, то чуть сложнее: перемещаемся к последней записи с помощью Seek, читаем содержимое в переменную-запись (Cars: TCar) с помощью Read, перемещаемся с помощью Seek к записи которую нужно удалить и записываем в эту запись содержимое переменной-записи (Cars: TCar) с помощью Write, потом опять перемещаемся к последней записи с помощью Seek и обрезаем файл с помощью Truncate. p.s. Количество записей которые уже есть в файле можно узнать с помощью FileSize. Если от этого числа отнять единицу, то получим номер последней записи, если это не отрицательное число, то указывая его в процедуре Seek можем переместиться к последней записи. |
#6
|
|||
|
|||
![]() Спасибо за помощь =)
|