Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.21;
Скачать: CL | DM;

Вниз

запись в файле record как найти нужную запись   Найти похожие ветки 

 
Vic-z   (2007-01-05 13:41) [0]

Структура записи в файле такая

TBase_f=record
  tel: String[15];
  fio: String[80];
  ul: String[80];
  gor: String[40];
  dus: String[15];
end;
var
 Form1: TForm1;
 f: File of TBase_f;
 rec: TBase_f;      
 n: Integer;      
 tel_red,fio_red,ul_red,gor_red,dus_red:String;

так читаю все записи

procedure TForm1.FormCreate(Sender: TObject);
begin
 AssignFile(f,"c:\tel.db");
 Reset(f);
 while not EOF(f) do
    begin
       read(f, rec);
       begin
           n:=n+1;
           StringGrid1.Cells[0,n]:= rec.tel;
           StringGrid1.Cells[1,n]:= rec.fio;
           StringGrid1.Cells[2,n]:= rec.ul;
           StringGrid1.Cells[3,n]:= rec.gor;
           StringGrid1.Cells[4,n]:= rec.dus;
       end;
 end;
 CloseFile(f);
end;

а как можно найти конкретную запись в файле например по номеру телефона rec.tel
типа вводим номер в Edit1.text и кликаем на Button1
и как найти все записи если введен номер не полностью, например ищем 2234
получаем все записи 22341,22342...22349


 
Anatoly Podgoretsky ©   (2007-01-05 13:45) [1]

> Vic-z  (05.01.2007 13:41:00)  [0]

if rec.tel = ... then


 
Vic-z   (2007-01-05 13:55) [2]


> Anatoly Podgoretsky ©   (05.01.07 13:45) [1]
> if rec.tel = ... then

а как по неполностью введенному номеру отобразить все найденные записи, вероятно как то использовать рег.выражения (не знаю как, подскажите)?
И можно ли как то удалить или изменить найденую запись где то в середине файла?


 
tesseract ©   (2007-01-05 14:00) [3]


> И можно ли как то удалить или изменить найденую запись где
> то в середине файла?


Изменить можно, Seek(f,RecordNo*SizeOf(Tbase_F)) / Write(f, NewRecord).

Удалить нельзя, только ввести пометку "удалён", или записать туда новую запись.


 
Vic-z   (2007-01-05 14:05) [4]


> tesseract ©   (05.01.07 14:00) [3]
> Изменить можно, Seek(f,RecordNo*SizeOf(Tbase_F)) / Write(f,
>  NewRecord).
спасибо
> Удалить нельзя, только ввести пометку "удалён", или записать
> туда новую запись.

пометка "удалён" что дает? можно подробнее как измениться структура файла?


 
Anatoly Podgoretsky ©   (2007-01-05 14:08) [5]

> Vic-z  (05.01.2007 13:55:02)  [2]

if POS("шаблон", rec.tel) > 0 then


 
Anatoly Podgoretsky ©   (2007-01-05 14:10) [6]

> Vic-z  (05.01.2007 14:05:04)  [4]

Дает признак, что запись удалена.
Структура никак не изменится.
Если структура изменится, то пиши пропало.

Твои вопросы не тянуют на начинающего, они ниже.



Страницы: 1 вся ветка

Текущий архив: 2007.01.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.054 c
2-1167456399
Adios
2006-12-30 08:26
2007.01.21
copyfile


15-1167257364
Real
2006-12-28 01:09
2007.01.21
День благодарения


15-1167164837
kroner
2006-12-26 23:27
2007.01.21
Регулярные выражения в delphi


15-1167229364
boriskb
2006-12-27 17:22
2007.01.21
Баян


6-1156099409
ronyn
2006-08-20 22:43
2007.01.21
Как узнать о коннекте?