![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Всем доброго времени суток. Суть вот в чем - Дан типизированный файл для хранения информации о тесте, который сохраняет в одну запись количество вопросов, номер текущего вопроса, варианты ответов и правильный ответ.
Вопрос: Раз уж я выбрал 1 запись для хранения всего, как мне теперь добавить возможность удаления вопросов? Поясню кодом: Вот как у меня идет вопрос в тесте Код:
...... const NQ=100;//максимальное число вопросов ...... type t_Test=record QW:array[1..NQ] of String[200]; //массив номера вопроса end; var Test:t_Test; FTest:File of t_Test; //файл для создания теста n:byte; //текущий вопрос k:byte; //количество вопросов Над кнопкой добавить вопрос я долго не думал Код:
k:=k+1; label1.Caption:=intTostr(K); А вот как теперь удалить текущий вопрос из теста? Код:
Test.QW[n].delete ??? Последний раз редактировалось whizzkey, 29.10.2010 в 15:43. |
|
#2
|
||||
|
||||
|
Все хранить в строке - не вариант. Но раз у тебя файл типизированный настоятельно рекомендую посмотреть в сторону функции seek.
|
|
#3
|
|||
|
|||
|
Ну а по подробнее о seek? Я знаю только что она используется для смещения файлового указателя и как она мне может помочь
?? Нешарю =(( Ты имеешь ввиду с помощью seek запихнуть вопрос в конец файла?? На удаление вроде не похоже |
|
#4
|
||||
|
||||
|
Удалять из типизированного файла строки надо так: читаешь весь файл в переменную, удаляешь из нее нужный фрагмент, и записываешь ее еще раз в файл... По другому не как
![]() |
|
#5
|
|||
|
|||
|
Ребят, хотяб примеров простых дайте =)
Ладно, тогда давайте я напишу как я понимаю в коде а вы тогда поправьте если гдето не прав, ок ?Посидев пару часиков за мануалами к делфи вроде как понял что можно коечто намутить при помощи seek и еще одной функции truncate Цитата:
Последний раз редактировалось whizzkey, 06.11.2010 в 14:39. |