Личный кабинет    
Назад К началу Вперед Карта сайта Телефонные коды стран и городов Мира Анализатор тарифов Служб IP-Телефонии и Рейтинг

Разделы
Введение
Литература
Операторы
Оборудование
Анализатор
Сотрудничество
Печать карт
Новости
Опросник
Коды
Справка
Работа
Каталог
Хостинг
Личный кабинет

Реклама

Perl для IP-Телефонии (7 – Операции с файлом)

предыдущая часть ««»» следующая часть
В дополнение к трем стандартным дескрипторам файлов, Perl позволяет открыть любое число дополнительных дескрипторов файлов. Чтобы открыть файл для чтения или  записи, можно применить встроенную функцию open языка Perl. В случае ус­пешного выполнения функция open возвращает дескриптор файла. Как отмечалось ранее поведение Perl практически не зависит от платформы и выбранного хостинга, но для более мощных проектов предпочтительнее услуги colocation нежели обычный виртуальный хостинг.

Функция printf предназначена для вывода с форматированием. Указанные элементы данных форматируются и выводятся на устройство вывода в соответствии со строкой формата $format. Язык форматирования является очень развитым и подробно описан в документации POD среды Perl для coответствующей функции sprintf.  

Использование функции syswrite представляет собой альтернативный способ вывода в де­скриптор файла, который позволяет получить больший контроль над процессом вывода. Ее пара­метрами являются дескриптор файла и скалярное значение (переменная или строковый литерал). Функция выводит данные в дескриптор файла и возвращает число успешно выведенных байтов. По умолчанию функция syswrite предпринимает попытку вывести все содержимое переменной $data, начиная с первого символа строки, на которую указывает эта переменная. Можно изменить такое поведение, указав необязательные параметры $length и $offset; в этом случае функция syswrite предпримет попытку вывести $length байтов, начиная с позиции, указанной параметром $offset.

Не считая того, что одна из этих функций является более привычной в использовании, основное различие между функциями print и syswrite состоит в том, что в первой применяется стан­дартная буферизация ввода-вывода, а в последней - нет. Не путайте функцию syswrite с функцией языка Perl, получившей неудачное название write. Последняя является частью пакета форматирования отчетов Perl.

Функция select  изменяет предусмотренный по умолчанию для вывода дескриптор файла, ко­торый используется функцией print. Эта функция принимает имя дескриптора файла, который должен быть установлен, как предусмотренный по умолчанию, и возвращает имя, которое было предусмотрено по умолчанию ранее. Есть еще одна версия функции select, которая принимает че­тыре параметра и используется для мультиплексирования ввода-вывода.

При чтении данных в виде потока байтов с помощью функции read или sysread обычно принято передавать значение length ($buffer) в качестве сме­щения в этом буфере. В результате во время выполнения функция read добавляет новые данные к концу данных, которые уже находились в буфере.



2013-09-17 00:21:26

предыдущая часть ««»» следующая часть


ДОКУМЕНТАЦИЯ VoIP


НОВОСТИ СВЯЗИ


РЕКОМЕНДУЕМ

 
[ стандарты | обзор | оборудование | анализатор | коды | новости | карта | партнерам | Мы ВКонтаке ]
Запрещается копировать материалы сайта без уведомления авторов.
С вопросами и предложениями обращайтесь со страницы контактов
Copyright c 1999-2025 IPTop.Net
 
IP-Телефония, Интернет Телефония, Компьютерная телефония