eof
Синтаксис
eof FILEHANDLE eof () eof
Описание
Функция возвращает 1, если следующая попытка чтения из файла FILEHANDLE вернет признак конца файла
либо если файл FILEHANDLE вообще не был открыт. Аргумент FILEHANDLE может представлять собой выражение,
значением которого является указатель файла.
ПРИМЕЧАНИЕ
Эта функция практически выполняет чтение из входного потока очередного байта, а затем возвращает его обратно
с помощью функции ungetcs, поэтому применять ее к интерактивным каналам ввода представляется не слишком разумным.
Не рекомендуется использование этой функции с файлами терминального ввода, а также после того, как уже
достигнут конец входного файла. В таких случаях в некоторых операционных системах происходит потеря признака конца
файла в терминальных каналах ввода.
При вызове eof без аргументов по умолчанию используется последний файл, из которого производилось чтение данных.
Можно использовать также синтаксис с пустыми скобками () , который обозначает псевдофайл, формируемый из списка
файлов, указанных в командной строке при вызове программы. Это позволяет использовать eof внутри цикла while для
выявления конца последнего файла в списке. Например:
# сбрасываем счетчик строк на каждом файле
while (<>) {
print "$.\t$_";
close(ARGV) if (eof); # а не eof().
}
# вставляем тире перед последней строкой последнего файла
while (<>) {
if (eof()) {
print "_____________\n";
close(ARGV); # close или break необходим если мы читаем с терминала
}
print;
}
ПРИМЕЧАНИЕ
Вам практически не нужно использовать eof при программировании на Perl, поскольку
операторы ввода при окончании входного потока возвращают undef.
Thanks
2023-11-16 22:30:18 Svetlana Thank you very useful information
Оставить комментарий:
|
|