Языки

» Html
» Java Script

» PHP

» Perl

» ASP

» CGI

» Xml

» Dhtml

» VBScript

» Java

» Css

Уроки

» Photoshop

» Corel Draw

» Dreamwawer

» Flash MX

Скачать

» Программы

» Книги

Шаблоны

» Сайтов

» Flash

» Скрипты

Perl

 

» язык perl

     » Главная страница

     » Вернуться к содержанию ( Perl )

 

Операторы ввода-вывода

В Perl существует несколько операторов ввода-вывода. Первый это скобки из символа “`” — акцента. Строка в этих скобках воспринимается как системная команда и результат ее действия возвращается как “псевдо” литерал. В скалярном контексте это строка содержащая весь результат, а в списковом — список, элементы которого — строки результата. Статус выполненной команды хранится в переменной $?.

Следующая команда ввода вывода выглядит как <файл>. Вычисление <файл> приводит к чтению строки из файла. Обратите внимание, что “файл” здесь не имя файла, а указатель файла, который создается функцией open(). В скалярном контексте читается одна строка вместе с символом “\ n” — перевода строки, а в списковом весь файл читается в список, элементы которого суть строки файла. В случае обнаружения конца файла результат оператора не определен и воспринимается как false. Если не указана переменная результата, то по умолчанию это $_. Указатель файла по умолчанию STDIN — стандартный ввод.

Например:

while(<>) { print; } ; # Прочитать и вывести весь файл STDIN

У оператора <> есть одна отличительная особенность. Если в командной строке нет никаких аргументов, то читается стандартный ввод, если есть аргументы, то они считаются именами файлов, которые последовательно читаются.

Если в угловых скобках записана переменная, то содержимое этой переменной считается именем указателя файла или ссылкой на указатель файла. Если такого указателя не существует, то содержимое переменной воспринимается как шаблон имен файлов и результат — имена файлов на диске, подходящих по шаблону.

Например:

while(<*.pl>) { print;} ; # То же что и ls *.pl

@files = <*>; # Массив @files содержит имена файлов в директории

Но лучше сделать:

@files = glob("*");

так как внутри скобок можно использовать переменные.

Сохранить документ

Сохранить документ (.doc)

Распечатать документ

Напечатать

 

Следующий урок

 


Общение
» Чат

» Форум

Реклама 

Здесь может быть Ваша реклама

Поиск

» Поиск

Статистика 

Связь
» Web дизайнер

» Ваша реклама

» Отзывы

» О проекте



Сайт управляется системой uCoz