Процедура Seek в Delphi переміщує покажчик у двійковому файлі на нову позицію.
System unit
procedure Seek (var FileHandle : File; RecordNumber : LongInt);
Процедура Seek переміщує поточну позицію запису у відкритому двійковому файлі вказаному FileHandle до нової позиції RecordNumber.
Файл, мабуть, був призначений AssignFile і відкритий за допомогою Reset або ReWrite.
Для нетипізованих файлів розмір запису встановлюється використовуючи підпрограми Reset або ReWrite.
Для типізованих файлів розмір запису = SizeOf (тип файлу).
Перший запис у файлі 0 запис.
Примітка.
Використовуйте SeekEoln або SeekEof, щоб перемістити вказівник файлу до текстового файлу.
Процедура Seek: Повторне встановлення у файлі типу Word
var
myWord, myWord1, myWord2, myWord3, myWord4 : Word;
myFile : File of Word;
begin
// Спроба відкрити бінарний файл Test.cus binary у режимі лише для запису
AssignFile(myFile, 'Test.cus');
ReWrite(myFile);
// Запис кількох рядків Word даних у файл
myWord1 := 12;
myWord2 := 34;
myWord3 := 56;
myWord4 := 78;
Write(myFile, myWord1, myWord2, myWord3, myWord4);
// Закриття файлу
CloseFile(myFile);
// Повторне відкриття файлу лише для читання
FileMode := fmOpenRead;
Reset(myFile);
// Переміщення на початок 3-го запису
Seek(myFile, 2); // Записи починаються з 0
// Показ цього запису
Read(myFile, myWord);
ShowMessage('Record 3 = '+IntToStr(myWord));
// Закриття файлу
CloseFile(myFile);
end;
Результат
Record 3 = 56
Подібні функції, процедури та команди
Eof — повертає true, якщо позиція курсору знаходиться в кінці відкритого файлу за допомогою Reset.
Eoln — повертає true, якщо позиція курсору знаходиться наприкінці рядка.
File — визначає типізований чи нетипізований файл.
FilePos — дає позицію файлу у двійковому або текстовому файлі.
SeekEoln — пропускає символи, доки не зустрінеться кінець поточного рядка або файлу.
