Конструктор ::load
Загрузка файла с диска или HTTP-сервера.
^file::load[формат;имя_файла]
^file::load[формат;имя_файла;опции_загрузки]
^file::load[формат;имя_файла;новое_имя_файла]
^file::load[формат;имя_файла;новое_имя_файла;опции_загрузки]
Загружает файл с диска или HTTP-сервера.
Формат — формат представления загружаемого файла. Может быть text (текстовым) или binary (двоичным). Различие между этими типами заключается в разных символах переноса строк. Для PC эти символы 0D 0A. При использовании формата text при загрузке файла символ 0D будет отброшен за ненадобностью, при записи методом save — будет добавлен.
имя файла — имя файла с путем или URL файла на HTTP-сервере.
Необходимо иметь в виду, что, если в конструкторе задан параметр новое имя файла, его значение будет присвоено полю name. Этот параметр удобно задействовать при использовании метода mail:send для передачи файла под нужным именем.
опции загрузки — см. «Приложение 1. Пути к файлам и каталогам, работа с HTTP-серверами».
Если файл был загружен с HTTP-сервера, поля заголовков HTTP-ответа в верхнем регистре доступны как поля объекта класса file. Также доступно поле tables — это хеш, ключами которого являются поля-заголовки HTTP-ответа в верхнем регистре, а значениями — таблицы с единственным столбцом value, содержащим все значения одноименных полей HTTP-ответа. Пришедшие cookies помещаются в поле cookies в виде таблицы со столбцами: name, value, expires, max-age, domain, path, HTTPonly и secure. [3.4.2]
Пример загрузки файла с диска
$f[^file::load[binary;article.txt]]
Файл с именем $f.name имеет размер $f.size и содержит текст:<br>
$f.text
Выведет размер, имя и текст файла.
Пример загрузки файла с HTTP-сервера
$file[^file::load[text;http://www.parser.ru;
$.timeout(5)
]]
Программное обеспечение сервера: $file.SERVER
<hr>
<pre>$file.text</pre>