Функции редактирования строки и текста (массива строк)
11k
{Тест для модуля редактирования строк и Массивов_Строк
L_EDIT.PAS от Виктора Осташева.
тест нацарапан на скорую руку by Valery Votintsev
}
program Edit_Tst;
Uses l_edit,l_scr;
Type
aString=Array[1..100] of string80;
Var
buffer:pChar;
F:Text;
FileName:String80;
LastKey:word;
buf: ^aString;
i:integer;
begin
GotoXY(1,1);
fillscr('',3); {Заполнить весь экран}
NormCrs; {Установить обычный курсор}
FileName:='l_edit.pas';
putstr(1, 1, 'EditFileName:', 7);
GotoXY(14,0);
LastKey:=EditLine(14, 0, 50, FileName, 14); {Ввести имя файла}
If lo(LastKey)<>27 then begin
Assign(F,FileName);
{$i-}
Reset(F); {Открыть редактируемый файл}
{$i-}
If IoResult <> 0 then
putstr(40, 1, 'Error!', 12)
else begin
New(buf); {Выделить память под буфер}
For i:=1 to 100 do {и считать туда строчки }
Readln(F,buf^[i]);
Close(F);
{Приступаем к редактированию буфера}
edit(4, 4, 70, 'Edit File ', 5, 7, 5, True, 12, 18, buf);
{
После редактирования можно, при желании, и записать изменения...
Например вот так:
Rewrite(F);
For i:=1 to 100 do begin
Writeln(F,buf^[i]);
end;
Close(F);
}
Dispose(buf); {Освободить буфер}
end;
end;
end.