FilePos, функция
Синтаксис
function FilePos(var F: File): LongInt; function FilePos(var F: TextFile): LongInt;
Описание
Функция FilePos возвращает текущую позицию (в виде номера записи) в файле F.
Начало файла - нулевая позиция. Если F - текстовый файл, размер записи может
быть произвольно задан размером буфера, который по умолчанию равен 128 байтам.
Если значение, возвращаемое функцией Eof(F),
равно True, FilePos возвращает количество записей а файле. FilePos не является
настоящей функцией.
Ошибки
- Если файл F не был открыт, FilePos выдает ошибку ввода/вывода 103.
- Хотя определить позицию в текстовом файле можно, но нельзя использовать
это значение для позиционирования. Процедура Seek
работает только с двоичными файлами. Чтобы определить позицию в текстовом
файле, используйте Windows API:
// Возвращает позицию в текстовом файле в байтах, если его буфер
// пуст.
function TextFilePos(var F: TextFile): Longlnt;
begin
Result := SetFilePointer(TTextRec(F).Handle, 0, nil, File_Current);
end;
- FilePos не поддерживает файлы свыше 2 Гбайт. Обратитесь к описанию функции
FileSeek из модуля SysUtils или используйте Windows API для работы с большими
файлами.
Советы и приемы
Пример
Смотрите также
Функции Eof, FileSize,
lOResult, процедуры Seek,
Truncate.
Нет комментариев.
Оставить комментарий:
|
|